/* Refined depth, opaque varied money, player facts and roof-mounted billboard. */
.meal-tree{left:calc(var(--meal-origin) + 52vh + var(--meal-parallax-shift,0px));bottom:0;width:108vh;z-index:310}
.meal-bus-flight{left:calc(var(--meal-origin) + 219vh + var(--meal-parallax-shift,0px));bottom:0;width:112vh;height:62vh!important;z-index:300;overflow:visible}
.meal-bus-flight .meal-bus-rig{inset:0;width:100%;height:100%}
.meal-chicago{left:calc(var(--meal-origin) + 322vh)}
.meal-player-jayson-tatum .meal-player-art{max-height:105vh}
.meal-story img.meal-atlanta-art{bottom:0;height:84vh!important;mask-image:none}
.meal-story img.meal-chicago-art{bottom:0;mask-image:none}
.meal-story img.meal-apartment-art{bottom:0}
.meal-rack-flight{left:calc(var(--meal-origin) + 356vh + var(--meal-parallax-shift,0px));bottom:0;width:80vh;z-index:400}
.meal-story .meal-rack-flight img.meal-rack{position:static;width:100%;height:auto;left:auto;bottom:auto}
.meal-story .meal-title{left:calc(var(--meal-origin) + 299vh + var(--meal-parallax-shift,0px))}
.meal-story .meal-title .meal-logo{filter:drop-shadow(0 0 5px #ffe13270) drop-shadow(0 0 15px #ffdf3240)!important}
.meal-sky{width:760vh}.meal-stars{background:none;opacity:1}
.meal-bill{opacity:1;filter:grayscale(.55) brightness(.96);width:3.3vh;transform-style:preserve-3d}
.meal-billboard{left:66vh;top:auto;bottom:67vh;width:94vh;height:32vh;z-index:8}
.meal-billboard-head{position:absolute;inset:0 0 auto;height:29vh;display:block;overflow:hidden;z-index:1}
.meal-billboard-head>img{clip-path:polygon(7% 2.5%,59.5% 2%,59.5% 33%,7% 33%);width:100%;height:auto!important;filter:grayscale(1)!important}
.meal-billboard-mount{position:absolute;left:32%;top:27vh;width:2.8vh;height:72vh;background:linear-gradient(90deg,#101214,#515556 27%,#242729 60%,#0e1011);box-shadow:1px 0 2px #0008;z-index:0}
.meal-billboard-screen{left:0;top:0;width:480px;height:240px;padding:12px;rotate:0;transform-origin:0 0;z-index:2}
.meal-billboard-screen b{font:900 22px/1.08 Arial}.meal-billboard-screen small{font:9px/1.5 Arial}.meal-billboard-screen i{font:9px Arial}

.meal-player-card{position:fixed;right:24px;bottom:110px;width:350px;max-height:calc(100vh - 160px);overflow:auto;box-sizing:border-box;padding:21px 23px;background:#0a0c0ff5;border:1px solid #f6d44a80;border-radius:14px;box-shadow:0 16px 50px #0009;z-index:510;color:#eee;font:13px/1.5 Arial}
.meal-player-card[hidden]{display:none!important}.meal-player-card>small{font:9px Arial;letter-spacing:.15em;color:#d4bb63}.meal-player-card h2{font:700 23px/1.2 Arial;margin:10px 20px 18px 0}.meal-player-card dl{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;margin:0}.meal-player-card dt{font:8px/1.5 Arial;letter-spacing:.08em;color:#b7b4aa}.meal-player-card dd{margin:3px 0 0;font:700 21px/1.2 Arial;color:#fff2b1}.meal-player-card dd[data-meal-stat=salary]{font-size:20px}.meal-player-card p{font:10px/1.5 Arial;color:#aaa79e;margin:17px 0 8px}.meal-player-stat-sources{display:flex;gap:14px}.meal-player-stat-sources a{font:10px Arial;color:#dbc771;text-decoration:none;border-bottom:1px solid #dbc77155;padding:5px 0}
.meal-player-card-close{position:absolute;right:12px;top:8px;padding:2px 5px;background:none;border:0;color:white;font-size:24px;cursor:pointer}
@media(max-aspect-ratio:1/1){.meal-player-card{left:14px;right:14px;bottom:110px;width:auto;padding:17px 19px;max-height:calc(100vh - 180px)}.meal-player-card h2{font-size:21px}.meal-player-card dl{gap:12px 16px}.meal-player-card dd{font-size:19px}}



/* Closely grouped arrival; all three architectural silhouettes overlap at one depth. */
.meal-lamp{left:calc(var(--meal-origin) + 105vh + var(--meal-parallax-shift,0px))}
.meal-apartment{left:calc(var(--meal-origin) + 269vh)}
.meal-story img.meal-apartment-art{width:78vh;height:96vh!important}
.meal-player-demar-derozan .meal-player-art{max-height:30vh}
.meal-story .meal-title{top:50vh;translate:-50% -50%}
.meal-lamp-glow{left:94%;top:4.15%;width:2.8vh;height:1vh;translate:-50% 0;border-radius:50%;background:#fff3b6;filter:none;box-shadow:0 0 5px 2px #ffe43899,0 0 14px 5px #ffd40044;mix-blend-mode:screen}
.meal-lamp-glow::after{content:'';position:absolute;top:20%;left:50%;translate:-50% 0;width:56vh;height:86vh;background:#efd34c38;mask-image:url('assets/light-falloff.svg');mask-size:100% 100%;mask-repeat:no-repeat;filter:blur(13px);transform-origin:50% 0;transform:scaleX(var(--meal-cone-scale,.9));pointer-events:none}
.meal-davis-ball{position:absolute;left:.1%;top:.05%;width:29.3%;height:auto;aspect-ratio:1;pointer-events:none;z-index:4;border-radius:50%;filter:grayscale(1);transform:none}
@media(max-aspect-ratio:1/1){.meal-bill{width:2.8vh}}



/* One real logo plane, including its black action pill. */
.meal-title .art-cue{position:static;translate:none;margin-top:14px!important;white-space:nowrap}
.meal-story .meal-team{bottom:var(--meal-bus-roof,26vh)}
.meal-player-alumna .meal-player-art{max-height:125vh}
.meal-player-kobe-bryant{translate:0 var(--meal-jump-y,0px)}
.meal-story .meal-detour-flight{left:calc(var(--meal-origin) + 392vh + var(--meal-parallax-shift,0px));bottom:-2vh;width:24vh;z-index:200;pointer-events:none}
.meal-story .meal-detour-flight img.meal-detour{position:static;width:100%;left:auto;bottom:auto}
/* Local rooftop details share the archive clock and the existing skyline plane. */
.meal-chicago-atmosphere{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:visible}
.meal-aircraft{position:absolute;left:var(--meal-aircraft-x,0%);top:14vh;width:3px;height:2px;border-radius:50%;background:#f1eee4;box-shadow:5px 1px 1px #cb4f4980,-4px 1px 1px #d8eee280;opacity:.55}
.meal-beacon{position:absolute;left:49.4%;top:1vh;width:3px;height:3px;background:#ed5b4e;border-radius:50%;opacity:var(--meal-beacon,.5);box-shadow:0 0 6px #d9493d70}








@media(min-aspect-ratio:1/1){.meal-story{--meal-origin:calc(50vw - 75vh)}}

/* Ground the opaque artwork, rather than the padded source canvas. */
.meal-story img.meal-atlanta-art,.meal-story img.meal-apartment-art,.meal-story img.meal-chicago-art{bottom:var(--meal-floor-offset,0px)}
.meal-tree{bottom:var(--meal-floor-offset,0px)}
.meal-story .meal-bus{bottom:var(--meal-floor-offset,0px)}
.meal-billboard-mount::after{content:'';position:absolute;bottom:0;left:-1vh;width:4.8vh;height:.7vh;background:linear-gradient(#55595b,#141719);border-radius:2px}
.meal-story button.meal-player,.meal-story button.meal-bus-rig{pointer-events:none}
.meal-player-art,.meal-story .meal-team,.meal-story .meal-bus{pointer-events:none!important}
.meal-player-hit,.meal-team-hit,.meal-bus-body-hit,.meal-solid-hit{position:absolute;display:block;pointer-events:auto;z-index:8;cursor:pointer;background:transparent}
.meal-solid-hit{z-index:1;cursor:grab}.meal-bus-body-hit{z-index:4;cursor:grab}.meal-team-hit{z-index:2}
.meal-story .meal-player-name{left:var(--meal-name-x,50%);top:var(--meal-name-y,0px);bottom:auto;translate:-50% -100%;z-index:9;pointer-events:none}
.meal-player .meal-player-name{max-width:calc(100vw - 32px);overflow:hidden;text-overflow:ellipsis}
.meal-player.is-meal-hover .meal-player-name{opacity:1}
.meal-player.is-meal-hover .meal-player-art{filter:grayscale(.65) brightness(1.04)!important}
.meal-hit-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}

.meal-story .meal-player .meal-player-art{filter:grayscale(1) contrast(1.04) sepia(calc(var(--meal-lamp-exposure,0)*.20)) brightness(calc(1 + var(--meal-lamp-exposure,0)*.28))!important}
.meal-story .meal-player.is-meal-hover .meal-player-art{filter:grayscale(.65) contrast(1.04) sepia(calc(var(--meal-lamp-exposure,0)*.20)) brightness(calc(1.04 + var(--meal-lamp-exposure,0)*.28))!important}
.meal-story .meal-player[aria-pressed=true] .meal-player-art{filter:grayscale(.35) contrast(1.04) sepia(calc(var(--meal-lamp-exposure,0)*.20)) brightness(calc(1.08 + var(--meal-lamp-exposure,0)*.28))!important}

/* Center the team over the bus body independently of viewport proportions. */
.meal-story .meal-team{left:55%;translate:-50% 0}
@media(max-aspect-ratio:1/1){
 .meal-story .meal-player-alumna{left:calc(var(--meal-origin) + 250vh + var(--meal-parallax-shift,0px))!important;width:44vh!important;bottom:-12vh!important}
 .meal-player-alumna .meal-player-art{max-height:86vh}
 .meal-story .meal-player-jayson-tatum{width:65vh!important}
 .meal-player-jayson-tatum .meal-player-art{max-height:88vh}
 .meal-billboard{bottom:57vh}
 .meal-billboard-mount{height:62vh}
}

/* Player facts follow the selected cutout, with screen-edge fallback. */
.meal-player-card{left:0;top:0;right:auto;bottom:auto;width:min(460px,calc(100vw - 28px));max-height:calc(100dvh - 182px);padding:27px 29px;font-size:15px;transform:translate3d(14px,76px,0)}
.meal-player-card>small{font-size:11px}.meal-player-card h2{font-size:30px;margin:12px 24px 22px 0}.meal-player-card dt{font-size:10px}.meal-player-card dd,.meal-player-card dd[data-meal-stat=salary]{font-size:27px}.meal-player-card p,.meal-player-stat-sources a{font-size:12px}.meal-player-card-close{min-width:44px;min-height:44px;right:7px;top:5px}
@media(max-width:600px){.meal-player-card{width:min(340px,calc(100vw - 28px));padding:20px 22px}.meal-player-card h2{font-size:26px}.meal-player-card dd,.meal-player-card dd[data-meal-stat=salary]{font-size:23px}.meal-player-card dl{gap:14px 16px}}
@media(max-height:500px){.meal-player-card{max-height:calc(100dvh - 150px);padding:16px 20px}.meal-player-card h2{font-size:24px;margin:8px 28px 12px 0}}
