/* Odyssey v9 — illumination belongs to the scenery; data stays still. */
:root{--od-motion-ease:cubic-bezier(.16,1,.3,1);--od-light:#f6c783;--od-blue-light:#8fc8ff}
body.od-motion-ready:before{display:none}
.od-world{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none;contain:strict;background:var(--canvas)}
.od-world-image{position:absolute;inset:-22px;transform:translate3d(var(--world-x,0px),var(--world-y,0px),0);will-change:transform}
.od-world picture,.od-world picture img{width:100%;height:100%;display:block}
.od-world picture img{object-fit:cover;object-position:center top}
.od-world-shade{position:absolute;inset:0;background:linear-gradient(180deg,#07152112 0%,#07152100 24%,#07152152 66%,#071521 97%)}
.od-world[data-scene=report] .od-world-shade{background:linear-gradient(180deg,#07152125,#0715210d 30%,#071521c9 75%,#071521 100%)}
.od-sea-light{position:absolute;left:52%;top:62%;width:34%;height:29%;opacity:.19;mix-blend-mode:screen;transform-origin:center;pointer-events:none;background:repeating-linear-gradient(171deg,transparent 0px,transparent 10px,#eecda369 11px,transparent 12px,transparent 23px);mask-image:radial-gradient(ellipse,#000 0%,transparent 69%)}
.od-dust{position:absolute;inset:0;overflow:hidden;pointer-events:none}.od-dust img{position:absolute;object-fit:contain;opacity:0}
.od-scene-light{position:absolute;left:0;top:0;width:540px;height:540px;opacity:0;transform:translate3d(var(--light-x,-700px),var(--light-y,-700px),0);background:radial-gradient(circle,#f6c78319,transparent 66%);mix-blend-mode:screen;transition:opacity 220ms ease-out;will-change:transform}
.od-world[data-pointer=true] .od-scene-light{opacity:1}
.od-nav nav{gap:18px}.od-global-motion{display:inline-flex;gap:7px;align-items:center;color:#e2eaf2;font-size:12px;min-height:44px;padding:8px;border:1px solid transparent;border-radius:5px;white-space:nowrap}.od-global-motion .icon{width:15px;height:15px}.od-global-motion[aria-pressed=true]{border-color:#8d7859;color:#f0c88b;background:#091b2aad}.od-global-motion:disabled{opacity:.8;cursor:default}
.od-oracle{width:235px;left:-32px;top:73px;isolation:isolate;transform:translate3d(var(--oracle-x,0px),var(--oracle-y,0px),0);will-change:transform}
.od-oracle .operator-button{height:330px;position:relative;z-index:1;cursor:pointer}
.od-oracle .scene-art{overflow:visible}.od-oracle .scene-art image{x:0;y:0;width:360px;height:460px}
.od-oracle-halo{position:absolute;left:5%;top:8%;width:190px;height:230px;z-index:-1;background:radial-gradient(ellipse,#90cfff36,transparent 70%);mix-blend-mode:screen;opacity:.55;pointer-events:none}
.od-oracle-caption{margin-top:4px;min-height:40px;flex-direction:column;gap:0}.od-oracle-caption span{white-space:normal;text-align:center;background:#071521bb;border:1px solid #b2925f55;min-height:35px;display:flex;align-items:center;justify-content:center;font-size:14px;max-width:240px;padding:8px 10px}.od-oracle-caption small{font:9px/1.6 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#d2e7f4;margin-top:6px}
.od-fate{isolation:isolate;transform:none!important;overflow:visible;transition:border-color 170ms ease-out,box-shadow 170ms ease-out}
.od-fate-art{position:relative;display:block;transform:perspective(650px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateZ(0);transform-origin:50% 60%;will-change:transform}
.od-fate .od-fate-art img{transform:none;transition:none}.od-fate:hover{transform:none!important;box-shadow:0 14px 36px #0006,0 0 0 1px #b8935860}
.od-relic-sheen{position:absolute;inset:8px;border-radius:7px;pointer-events:none;z-index:-1;opacity:0;background:radial-gradient(ellipse 185px 230px at var(--foil-x,50%) var(--foil-y,20%),#e6be8545 0%,#589ff12b 45%,transparent 75%);transition:opacity 180ms ease-out}
.od-fate[data-hover=true] .od-relic-sheen{opacity:1}.od-fate:focus-visible .od-relic-sheen{opacity:.6}
.od-relic-corner{position:absolute;width:29px!important;height:29px!important;object-fit:contain!important;left:11px;top:11px;margin:0!important;opacity:.65;pointer-events:none}.od-relic-corner.reverse{left:auto;top:auto;right:11px;bottom:11px;rotate:180deg}
.od-fate h2,.od-fate>span{position:relative}.od-fate h2{font-size:27px}.od-fates{perspective:1200px}
.od-input-row{position:relative;isolation:isolate}.od-input-row:focus-within{border-color:#e4b876;box-shadow:0 0 0 3px #e4b87628,0 6px 24px #001b2c44}
.od-fate:focus-visible,.operator-button:focus-visible{outline:3px solid var(--focus);outline-offset:6px}
.od-sigil-ripple{position:absolute;left:50%;top:42%;width:110px;height:110px;margin:-55px;pointer-events:none;border:1px solid #f4c68b;border-radius:50%;z-index:3}
.od-sigil-ripple:before,.od-sigil-ripple:after{content:"";position:absolute;inset:12px;border:1px solid #8fc8ffb3;border-radius:50%}.od-sigil-ripple:after{inset:25px;border-color:#f4c68b6b;rotate:45deg}
.od-export-spark{position:fixed;width:19px;height:24px;pointer-events:none;z-index:180;object-fit:contain}
.od-export-ring{position:fixed;width:52px;height:52px;border:1px solid #e9bd7c;border-radius:50%;pointer-events:none;z-index:179}
.stats-token{overflow:hidden;isolation:isolate}.stats-token:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:0;background:radial-gradient(ellipse 170px 85px at var(--foil-x,50%) var(--foil-y,50%),#efc59122,transparent 80%);transition:opacity 140ms ease-out}.stats-token[data-hover=true]:after{opacity:1}.stats-token:focus-visible{outline:3px solid var(--focus);outline-offset:-4px}
.stats-metric{isolation:isolate;overflow:visible}.stats-metric:before{content:"";position:absolute;inset:0;border:1px solid transparent;border-radius:inherit;pointer-events:none;transition:border-color 160ms ease-out}.stats-metric[data-hover=true]:before{border-color:#d0ad7377}.stats-metric-art{transform:translate3d(var(--tile-x,0px),var(--tile-y,0px),0);will-change:transform}
.stats-rook-button{pointer-events:none!important}.stats-rook .mascot-cutout{filter:none!important}
.stats-comic .stats-panel .scene-art{width:100%;max-height:210px}.stats-comic .stats-panel .scene-art image{width:510px;height:460px;x:25px;y:0}
.stats-panel{position:relative;isolation:isolate}.stats-panel:after{content:"";position:absolute;bottom:0;left:0;height:2px;width:100%;background:var(--od-gold);transform:scaleX(0);transform-origin:left;transition:transform 220ms var(--od-motion-ease);pointer-events:none}.stats-panel[aria-pressed=true]:after{transform:scaleX(1)}
.stats-story-controls{border-bottom:1px solid #b28e4c4d;margin-bottom:18px;padding-bottom:14px}.od-story-seal{display:block;width:48px;height:48px;object-fit:contain;margin-left:auto}.od-empty-traveller{max-width:160px!important;height:200px!important;object-fit:contain}
.od-footer>img{width:285px;height:70px;object-fit:contain;margin-block:4px 12px}.od-footer>div{font-size:11px}
/* Export uses frozen SVG/Canvas content, not an animation frame. */
.od-motion-paused .od-world-image,.od-static .od-world-image{will-change:auto}.od-motion-paused .od-scene-light,.od-static .od-scene-light{display:none}.od-static .od-oracle,.od-static .od-fate-art,.od-static .stats-metric-art{will-change:auto}
@media(max-width:1200px){.od-oracle{width:182px;left:-5px;top:91px}.od-oracle .operator-button{height:278px}.od-oracle-halo{width:145px;height:160px}.od-oracle-caption span{font-size:12px}.od-hero-copy{max-width:600px}}
@media(max-width:930px){.od-oracle{display:none}.od-nav nav{gap:8px}.od-world-image{inset:-12px}}
@media(max-width:650px){.od-nav nav{gap:2px}.od-global-motion{padding:8px 6px;font-size:10px;gap:5px}.od-global-motion span{max-width:62px;white-space:normal;line-height:1.3}.od-nav .how-link{font-size:10px;gap:3px}.od-nav .how-link .icon{display:none}.od-logo img{width:143px}.od-world-image{inset:0}.od-world picture img{object-position:center center}.od-world-shade{background:linear-gradient(180deg,#07152100 0%,#07152111 22%,#07152189 64%,#071521 100%)}.od-hero{padding-top:26px}.od-hero h1{font-size:46px}.od-fate h2{font-size:17px}.od-fate-art{transform:none!important}.od-relic-corner{width:15px!important;height:15px!important;left:6px;top:6px}.od-relic-corner.reverse{left:auto;top:auto;right:6px;bottom:6px}.od-relic-sheen{inset:4px}.od-sea-light{display:none}.od-footer>img{width:230px;height:52px}.od-footer>div{font-size:9px}.stats-metric-art{transform:none!important}.od-story-seal{width:34px;height:34px}.stats-story-controls{gap:10px}.stats-story-controls .small{display:none}}
@media(max-width:359px){.od-logo img{width:128px}.od-global-motion{font-size:9px;padding-inline:4px}.od-nav .how-link{font-size:9px}.od-hero h1{font-size:40px}.od-fate h2{font-size:14px}}
@media(hover:none),(pointer:coarse){.od-scene-light,.od-dust{display:none}.od-relic-sheen{background:none}.od-fate-art,.stats-metric-art,.od-world-image{transform:none!important;will-change:auto}.od-fate:active{border-color:#f4c68b}}
@media(prefers-reduced-motion:reduce){.od-world-image,.od-oracle,.od-fate-art,.stats-metric-art{transform:none!important;will-change:auto}.od-dust,.od-scene-light,.od-sea-light{display:none}.od-relic-sheen{transition:none}.od-sigil-ripple,.od-export-spark,.od-export-ring{display:none}.stats-panel:after{transition:none}}
/* Resolved after first rendered comparison: keep foil above the surface, below copy. */
.od-relic-sheen{z-index:0;background:radial-gradient(ellipse 205px 235px at var(--foil-x,50%) var(--foil-y,20%),#e6be854b 0%,#589ff13b 44%,transparent 78%)}
.od-fate-art,.od-fate h2,.od-fate>span:not(.od-relic-sheen),.od-fate i{z-index:1}.od-relic-corner{z-index:2}
.od-home .example-entry{width:max-content;max-width:100%;background:#081b2cd4;border:1px solid #49607366;border-radius:5px;padding:0 10px;margin-inline:auto}
.live-availability{display:table;background:#071521d9;padding:4px 8px;border-radius:4px;color:#d8e9f5;margin:7px auto 0}

/* rc-260922-01: at phone width the global Pause becomes a 44 px icon button (its accessible name
   stays on the button) so it no longer crowds “How it works”; both keep 44 px hit areas. */
@media(max-width:650px){.od-nav nav{gap:6px}.od-global-motion{width:44px;height:44px;padding:0;justify-content:center;gap:0}.od-global-motion span{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0}.od-global-motion .icon{width:17px;height:17px}.od-nav .how-link{min-height:44px;display:inline-flex;align-items:center;padding:0 2px 0 10px;font-size:12px;gap:5px;border-left:1px solid #334552;white-space:nowrap}}
@media(max-width:359px){.od-nav .how-link{font-size:11px;padding-left:8px}}
