/* Stadium 04: one quiet edge rail, optional settings, and the court in view. */
body::before{background:linear-gradient(90deg,#00071399,transparent 42%),linear-gradient(0deg,#000815b3,transparent 24%)}
.cm-main{top:auto;bottom:112px;transform:none;width:min(480px,calc(100vw - 48px));max-height:calc(100dvh - 250px)}
.cm-main h1{font-size:clamp(46px,5.2vw,78px);line-height:.84}
.cm-kicker{margin-bottom:16px;line-height:1.5}.cm-intro{font-size:15px;line-height:1.5;margin:20px 0;max-width:340px}
.cm-primary a{border-radius:30px 11px 30px 11px;box-shadow:inset 0 2px #ffffff70,inset 0 -4px #00112c45,0 8px 20px #0006;transition:transform .3s,border-radius .6s,background .3s}
.cm-primary a:hover,.cm-primary a:focus-visible{border-radius:11px 30px 11px 30px;transform:translateY(-3px)}
.cm-angles-toggle{margin-top:14px}.cm-bottom{display:none}
.cm-view-rail{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:30;display:flex;align-items:center;gap:6px;padding:7px;border:1px solid #b9c9df40;border-radius:16px;background:#030c19ed;box-shadow:inset 0 1px #ffffff25;max-width:calc(100vw - 32px);width:max-content}
#cmViewRail{display:flex;align-items:center;gap:3px;min-width:0}
.cm-view-rail :is(button,summary){display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:1px solid #c1d3ec25;background:#d5e6ff09;color:#dce8f8;border-radius:11px;padding:10px 14px;font:700 11px/1.3 Inter,sans-serif;letter-spacing:.07em;cursor:pointer;white-space:nowrap;list-style:none}
.cm-view-rail :is(button,summary):hover{background:#29467466;border-color:#85aeff;color:#fff}
.cm-view-rail :is(button,summary):focus-visible{outline:2px solid #c7fc68;outline-offset:3px}
#cmViewPicker{min-width:168px;color:#e2f3ff;border-color:#91bfe859}
#cmPrevious,#cmNext{min-width:44px;padding:8px;font-size:20px}
#cmTour{color:#05070a;background:#c7fc68;border-color:#c7fc68;min-width:108px}
#cmViewSettings{position:relative}#cmViewSettings summary::-webkit-details-marker{display:none}
#cmViewSettings summary::after{content:'＋';color:#a9c7e8}#cmViewSettings[open] summary::after{content:'−'}
.cm-settings-body{position:absolute;bottom:calc(100% + 14px);right:0;width:245px;display:grid;gap:7px;padding:12px;border:1px solid #043cff59;border-radius:16px;background:#031852f5;box-shadow:inset 0 1px #e9eef235,0 12px 30px #0008;backdrop-filter:blur(16px)}
#cmViewSettings:not([open])>.cm-settings-body{display:none}.cm-settings-body button{width:100%;justify-content:space-between}
body:is(.focus-view,.exhibit-view) .cm-main{display:none}body.focus-view::before{background:linear-gradient(0deg,#00081588,transparent 14%)}
.cm-header nav a{background:#020a14bb;border-color:#a4c9f033}.cm-header nav a:hover{background:#19314dcc}
.cm-travel{position:fixed;top:102px;left:4vw;max-width:calc(100vw - 60px);padding:10px 15px;border-left:2px solid #c7fc68;background:#06122acc;color:#cadcff;z-index:24;font:700 11px/1.4 Inter,sans-serif;letter-spacing:.13em;pointer-events:none}.cm-travel[hidden]{display:none}
body.scene-ready .cm-travel{display:none} /* The arrival title carries live movement feedback. */
.cm-angles{bottom:98px;z-index:32}.cm-angles-head{position:sticky;top:-22px;padding-top:15px;background:#030914;z-index:2}
body.choosing-location .cm-main{display:none}
.cm-location-options{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);display:flex;gap:12px;z-index:25;max-width:calc(100vw - 32px)}
.cm-location-options[hidden]{display:none}
.cm-location-options :is(a,button){display:flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;color:#e9eef2;border:1px solid #043cff99;border-radius:20px 6px;background:linear-gradient(145deg,#043cff30,#031852a6);box-shadow:inset 0 1px #e9eef280,0 5px 0 #031852;backdrop-filter:blur(12px);font:700 12px/1.3 Inter,sans-serif;text-decoration:none;cursor:pointer;white-space:nowrap}.cm-location-options a{border-color:#b9f77299}
.cm-location-options :focus-visible{outline:2px solid #c7fc68;outline-offset:4px}
#pfRadio{display:flex;align-items:center;gap:5px;padding:5px 6px;border:1px solid #a6bed540;border-radius:24px;background:#050c18ed;font:700 11px/1 Inter,sans-serif;letter-spacing:.08em}
#pfRadio b{padding:0 10px;color:#91a9cc;font-size:10px}#pfRadio button{min-height:32px;padding:8px 12px;border:1px solid transparent;border-radius:20px;background:transparent;color:#d1def3;font:700 11px/1 Inter,sans-serif;letter-spacing:.08em;cursor:pointer}
#pfRadio button[aria-pressed=true]{background:#c7fc68;color:#05070a}#pfRadio button:focus-visible{outline:2px solid #c7fc68;outline-offset:2px}
#pfRadio[data-playing=false] .eq{animation:none!important}
body:not(.launch-title-open) #pfDeck:not([hidden]){display:block!important;position:fixed;right:clamp(24px,4vw,66px);top:142px;width:320px;max-width:calc(100vw - 44px);z-index:23;padding:12px;border:1px solid #99caff5c;border-radius:12px;background:linear-gradient(135deg,#6685a42b,#06101fe0);color:#e4edff;backdrop-filter:blur(18px);box-shadow:inset 0 1px #d5eaff50,0 8px 36px #0005;font:13px/1.5 Inter,sans-serif}
#pfDeck[hidden],#pfSpotifyControls[hidden]{display:none!important}
#pfDeck .top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}#pfDeck button{min-height:36px;border:1px solid #9daec055;background:#162840;color:#edf4ff;border-radius:8px;padding:7px 12px;cursor:pointer}
#pfDeck .host,#pfDeck .host iframe{height:152px}#pfDeck .host iframe{width:100%;border:0;border-radius:8px}#pfDeck .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}#pfDeck a{color:#c7fc68}#pfSpotifyStatus{font-size:12px;color:#afc5e4}
@media(max-width:900px){
 .cm-view-rail{gap:4px;padding:6px}.cm-view-rail :is(button,summary){padding:9px 10px;font-size:10px}
 .cm-main{top:auto;bottom:108px}.cm-travel{top:134px}
 body:not(.launch-title-open) #pfRadio{top:76px!important;bottom:auto!important;transform:none}
 body:not(.launch-title-open) #pfDeck:not([hidden]){top:132px;right:22px}
}
@media(max-width:650px){
 .cm-header{padding:18px}.cm-header nav a{min-height:44px}.cm-header nav a:nth-of-type(3){display:none}
 .cm-view-rail{display:grid;grid-template-columns:1fr 1fr;gap:5px;width:calc(100vw - 24px);max-width:430px;bottom:max(10px,env(safe-area-inset-bottom))}
 #cmViewRail{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:44px 1fr 44px}
 #cmTour{grid-column:1;grid-row:2;width:100%}#cmLocationsOpen{grid-column:2;grid-row:2}
 #cmViewSettings{grid-column:1/-1;grid-row:3}#cmViewSettings summary{width:100%;min-height:32px;box-sizing:border-box}
 #cmViewPicker{min-width:0;white-space:normal;font-size:10px}
 .cm-settings-body{width:calc(100% - 24px);right:0;display:grid;grid-template-columns:1fr 1fr}
 .cm-main{left:18px;bottom:178px;width:calc(100vw - 36px);max-height:calc(100dvh - 330px)}
 .cm-main h1{font-size:clamp(36px,9.8vw,54px)}.cm-intro{font-size:13px;line-height:1.45;margin:12px 0;max-width:30ch}.cm-kicker{font-size:9px;letter-spacing:.16em;margin-bottom:10px}
 .cm-primary{flex-wrap:nowrap;gap:8px}.cm-primary a{min-width:0!important;font-size:10px;padding:12px;gap:12px;flex:1;min-height:46px}
 .cm-angles-toggle{font-size:10px;margin-top:6px;min-height:38px;padding:5px 0}
 .cm-location-options{gap:6px;bottom:178px;width:calc(100vw - 24px)}.cm-location-options :is(a,button){font-size:10px;white-space:normal;padding:10px 8px;flex:1}
 .cm-angles{top:130px;bottom:174px;right:12px;width:calc(100vw - 64px);padding:18px}
 body:not(.launch-title-open) #pfRadio{top:74px!important;right:18px!important}
 body:not(.launch-title-open) #pfDeck:not([hidden]){top:126px;right:18px;width:280px}
}
@media(max-height:650px) and (min-width:651px){.cm-main h1{font-size:42px}.cm-main{bottom:96px;max-height:calc(100dvh - 200px)}.cm-intro{margin:10px 0;font-size:13px}.cm-kicker{margin-bottom:8px}.cm-primary a{min-height:44px;font-size:11px}.cm-angles-toggle{margin-top:5px}.cm-angles{top:92px}}
@media(prefers-reduced-motion:reduce){.cm-primary a{transition:none}}
