/* V36 finish: authored stadium, clear reading lanes, machined silver / lime / yellow. */
:root{--r36-green:#b6ef3c;--r36-yellow:#ffe45b;--r36-text:#f3f6ed;--r36-edge:#dae9df91;--r36-safe:max(18px,env(safe-area-inset-left));color-scheme:dark}
*{box-sizing:border-box}::selection{background:#b6ef3c;color:#091000}input{caret-color:#b6ef3c}button,a,select,summary{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:#b6ef3c38 }
:is(button,a,input,select,summary):focus-visible{outline:3px solid #ffe45b!important;outline-offset:4px!important}
html body.rotor-access-ready.rotor-access-ready .rotor-access-dock{top:20px!important;right:20px!important;width:min(960px,calc(100vw - 40px))!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:7px!important;padding:7px!important;border-radius:26px!important;background:linear-gradient(155deg,#e9ffe218,#0307055c 45%,#0307059c)!important;border:1px solid var(--r36-edge)!important;box-shadow:inset 0 2px 1px #ffffdb78,inset 0 -2px 4px #0009,0 12px 28px #0006!important;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
html body.rotor-access-ready.rotor-access-ready .rotor-access-dock .rotor-access-route{min-height:60px!important;min-width:0;padding:9px 6px!important;display:flex!important;flex-direction:column;gap:5px!important;border-radius:19px!important;border:1px solid #f0ffd340!important;color:#f5f7ef!important;font:700 11px/1.15 Inter,Arial,sans-serif!important;letter-spacing:.035em!important;background:linear-gradient(150deg,#fcffe31e,#02080539 48%,#e1ffe710)!important;box-shadow:inset 0 1px #fff8,inset 0 -2px 4px #0007,0 4px 10px #0004!important;transition:background .2s,border-color .2s,transform .2s}
html body.rotor-access-ready.rotor-access-ready .rotor-access-dock .rotor-access-route:hover{border-color:#d5ff76!important;background:linear-gradient(150deg,#dbff832d,#03080545)!important;transform:translateY(-2px)}
html body.rotor-access-ready.rotor-access-ready .rotor-access-dock .rotor-access-route:active{transform:translateY(1px)}
html body.rotor-access-ready.rotor-access-ready .rotor-access-glyph{width:27px!important;height:27px!important;flex-basis:27px!important;opacity:1!important}
html body.rotor-access-ready.rotor-access-ready .rotor-access-dock .rotor-access-play{color:#ffe45b!important;border-color:#ffe45b99!important;background:linear-gradient(155deg,#ffe45b34,#09100666)!important}
html body.rotor-access-ready.rotor-access-ready .rotor-access-dock>a[href="/"]{color:#caff83!important;border-color:#b6ef3c70!important}
/* Restore the authored GTA text, without the old landing-page controls covering the court. */
html body.blue-court-opening:not(.rotor-access-panel-open):not(.club-center-open):not(.emblem-editor-open) #mainMenu{display:block!important;position:fixed!important;left:var(--r36-safe)!important;top:auto!important;bottom:118px!important;right:auto!important;width:min(470px,38vw)!important;max-height:46vh!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;pointer-events:none;z-index:30!important}
html body.blue-court-opening #mainMenu h1{margin:0!important;font:800 clamp(36px,4.7vw,72px)/.94 'Barlow Condensed',Inter,sans-serif!important;letter-spacing:-.015em!important;color:#f3f6ed!important;text-transform:uppercase;text-shadow:0 3px 4px #000,0 10px 26px #000c!important}
html body.blue-court-opening #mainMenu h1 em{font-style:normal!important;color:#b6ef3c!important}
html body.blue-court-opening #mainMenu .cm-intro{display:block!important;color:#f3f6ed!important;font:500 13px/1.5 Inter,sans-serif!important;max-width:35ch!important;margin:14px 0 0!important;text-shadow:0 2px 5px #000!important}
html body.blue-court-opening #mainMenu :is(.cm-primary,.cm-learning,.cm-angles-toggle,.cm-kicker){display:none!important}
html body.blue-court-opening #stadiumArrival{display:none!important}
html body.blue-court-opening #cmGreenRoom{display:none!important}
html body.blue-court-opening .cm-header{display:flex!important;position:fixed!important;left:20px!important;top:24px!important;padding:0!important;width:auto!important;background:none!important;border:none!important;z-index:40!important}
html body.blue-court-opening .cm-header nav{display:none!important}
html body.blue-court-opening .cm-brand{font:800 31px/1 'Barlow Condensed',sans-serif!important;color:#f6f8f0!important;text-shadow:0 2px 8px #000}
html body.blue-court-opening .cm-brand small{display:block!important;font:600 9px/1.7 Inter,sans-serif!important;letter-spacing:.18em!important;color:#b6ef3c!important}
html body .cm-view-rail{left:var(--r36-safe)!important;right:auto!important;bottom:max(20px,env(safe-area-inset-bottom))!important;top:auto!important;max-width:calc(100vw - 40px)!important;width:auto!important;border-color:var(--r36-edge)!important;background:linear-gradient(155deg,#f3ffe51c,#02070570)!important;border-radius:23px!important;box-shadow:inset 0 1px #fff9,0 9px 22px #0007!important;padding:5px!important;gap:5px!important}
html body .cm-view-rail :is(button,summary){min-height:44px!important;padding:8px 12px!important;font:700 11px/1.2 Inter,sans-serif!important;letter-spacing:.035em!important;background:linear-gradient(165deg,#f3ffe522,#02050366)!important;color:#f4f7ea!important;border:1px solid #e7ffd954!important;border-radius:17px!important;box-shadow:inset 0 1px #fff5!important}
html body .cm-view-rail #cmViewPicker{color:#b6ef3c!important;min-width:150px!important}
/* Live window uses the existing HDR renderer and its own camera-correct mirror. */
html body #rotorWorldView.rotor-view-pip{left:auto!important;right:20px!important;top:auto!important;bottom:102px!important;width:min(330px,32vw)!important;border-radius:28px!important;background:linear-gradient(150deg,#f5ffe512,#0005)!important;border-color:#e6ffb58c!important;padding:12px!important;box-shadow:inset 0 2px #ffffdf88,0 18px 36px #0008!important}
html body #rotorWorldView:not(.expanded) .pip-world-actions{display:none!important}
html body .rotor-view-pip :is(button,select){min-height:44px!important;color:#f3f7eb!important;background:linear-gradient(160deg,#faffdf27,#03070577)!important;border-color:#e1f5c785!important;border-radius:16px!important;padding:6px 9px!important}
html body .rotor-view-pip select{min-width:0;flex:1;font-size:11px!important}
html body #rotorWorldView.expanded{width:min(650px,calc(100vw - 40px))!important;top:118px!important;bottom:auto!important;max-height:calc(100dvh - 138px)!important;overflow:auto!important}
html body .rotor-view-toggle{left:auto!important;right:20px!important;top:auto!important;bottom:20px!important;border-radius:19px!important;min-height:48px!important;background:linear-gradient(155deg,#f5ffe52a,#04070577)!important;color:#caff83!important;border-color:#caff83a6!important;font-weight:750!important;box-shadow:inset 0 1px #fff9,0 8px 20px #0006!important}
.rotor36-session-tools{position:fixed;z-index:410;right:20px;top:112px;display:flex;gap:8px}
.rotor36-session-tools button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 14px;color:#f7faef;border:1px solid #e1f4cf85;border-radius:20px;background:linear-gradient(155deg,#ffffe632,#0109058c 58%,#b6ef3c17);box-shadow:inset 0 1px #ffffdcbd,inset 0 -2px 3px #0008,0 8px 19px #0005;font:700 11px/1.2 Inter,sans-serif;letter-spacing:.025em;cursor:pointer}
.rotor36-session-tools button:hover{border-color:#b6ef3c;color:#b6ef3c}.rotor36-session-tools svg,.rotor36-music-close svg{width:21px;height:21px;flex:none}
html body :is(.rotor-access-panel,.rotor-club-center){border-color:#dfff9696!important;background:linear-gradient(155deg,#dfff8d20,#050805c9 30%,#020402de)!important;box-shadow:inset 0 2px #ffffdea1,inset 0 -1px #b6ef3c40,0 24px 48px #000a!important;border-radius:30px!important}
html body .rotor-access-panel :is(a,button){min-height:46px!important;background:linear-gradient(155deg,#ffffdb28,#01040366)!important;box-shadow:inset 0 1px #ffffdfa1,inset 0 -2px 3px #0008,0 5px 13px #0005!important;border-color:#eeffd27a!important;color:#f5f7ea!important}
html body .rotor-access-panel .rotor-access-start,html body .club-mode:first-child{background:linear-gradient(150deg,#d5ff7d,#b6ef3c 65%,#90bc31)!important;color:#081002!important;text-shadow:none!important;border-color:#edffc5!important}
html body .rotor-access-panel[hidden]{display:none!important}
html body.rotor-access-panel-open .rotor36-session-tools,html body.club-center-open .rotor36-session-tools{display:none!important}
html body .rotor-access-panel>.rotor-access-dock{top:auto!important;right:auto!important;padding:5px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
html body.rotor-match-frame.rotor-access-ready.rotor-access-ready .rotor-access-dock{top:90px!important;width:min(960px,calc(100vw - 40px))!important}
html body.rotor-match-frame .rotor36-session-tools{top:180px!important}
html body.playing .rotor36-session-tools{display:none}
/* Reach music controls in every game room; closing never recreates or seeks the host media. */
html body:not(.rotor36-music-open) #pfDeck,html body:not(.rotor36-music-open) .pf-radio-wake{display:none!important}
html body.rotor36-music-open #pfDeck:not([hidden]){display:block!important;position:fixed!important;right:20px!important;left:auto!important;top:172px!important;bottom:auto!important;width:min(360px,calc(100vw - 40px))!important;max-height:calc(100dvh - 192px)!important;padding:16px!important;overflow:auto!important;border:1px solid #e7ffd99c!important;border-radius:28px!important;background:linear-gradient(145deg,#d7ff9826,#040704dd)!important;box-shadow:inset 0 2px #fff8,0 20px 40px #0009!important;z-index:510!important}
html body.rotor36-music-open #pfDeck .host{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:16/9;min-height:0!important;max-height:none!important;background:transparent!important}
html body.rotor36-music-open #pfDeck .top{padding-right:38px!important}
html body.rotor36-music-open #pfDeck :is(button,a){min-height:44px!important;color:#f6f9ed!important;border-color:#e1ffd786!important;background:linear-gradient(155deg,#efffc927,#02050366)!important;border-radius:15px!important}
.rotor36-music-close{position:absolute;right:10px;top:10px;display:flex;align-items:center;justify-content:center;width:44px;min-height:44px;padding:8px;cursor:pointer}
html body.rotor36-music-open #pfDeck .rotor36-music-close{border:1px solid #dfff9696!important}
html body :is(.rotor-access-panel,.rotor-club-center,#pfDeck){scrollbar-width:thin;scrollbar-color:#b6ef3c80 #050805}
@media(max-width:1180px){html body.blue-court-opening .cm-header{display:none!important}html body.rotor-access-ready.rotor-access-ready .rotor-access-dock{left:20px!important;right:20px!important;width:calc(100vw - 40px)!important}}
@media(max-width:760px){
 html body.rotor-access-ready.rotor-access-ready .rotor-access-dock{top:12px!important;left:12px!important;right:12px!important;width:calc(100vw - 24px)!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;padding:5px!important;border-radius:23px!important}
 html body.rotor-access-ready.rotor-access-ready .rotor-access-dock .rotor-access-route{min-height:48px!important;flex-direction:row!important;font-size:10px!important;padding:6px 4px!important;letter-spacing:0!important}
 html body.rotor-access-ready.rotor-access-ready .rotor-access-glyph{width:21px!important;height:21px!important;flex-basis:21px!important}
 .rotor36-session-tools{top:130px;right:12px;gap:6px}.rotor36-session-tools button{min-height:44px;font-size:10px;padding:8px 10px}
 html body.blue-court-opening:not(.rotor-access-panel-open):not(.club-center-open):not(.emblem-editor-open) #mainMenu{left:16px!important;bottom:210px!important;width:calc(100vw - 32px)!important;max-height:27vh!important}
 html body.blue-court-opening #mainMenu h1{font-size:clamp(29px,8vw,46px)!important;max-width:70%!important}
 html body.blue-court-opening #mainMenu .cm-intro{font-size:11px!important;max-width:28ch!important;margin-top:8px!important}
 html body #rotorWorldView.rotor-view-pip{right:12px!important;bottom:88px!important;left:auto!important;width:186px!important;padding:7px!important;border-radius:22px!important}
 html body #rotorWorldView .rotor-view-window{aspect-ratio:1.8!important}
 html body #rotorWorldView header{gap:3px!important;margin-bottom:5px!important}
 html body #rotorWorldView :is(button,select){min-height:44px!important;padding:4px!important;border-radius:12px!important}
 html body #rotorWorldView select{font-size:9px!important;max-width:54px!important}
 html body .rotor-view-toggle{right:12px!important;bottom:16px!important;font-size:10px!important;padding:8px 10px!important;min-height:44px!important}
 html body .cm-view-rail{left:12px!important;bottom:16px!important;max-width:calc(100vw - 145px)!important;padding:4px!important;gap:3px!important;flex-wrap:wrap!important}
 html body .cm-view-rail :is(button,summary){font-size:9px!important;padding:6px!important;min-height:44px!important}
 html body .cm-view-rail :is(#cmLocationsOpen,#cmViewSettings){display:none!important}
 html body .cm-view-rail #cmViewPicker{min-width:0!important;max-width:100px!important;font-size:8px!important}
 html body #rotorWorldView.expanded{top:182px!important;bottom:auto!important;left:12px!important;right:12px!important;width:calc(100vw - 24px)!important;max-height:calc(100dvh - 198px)!important}
 html body #rotorWorldView.expanded select{max-width:none!important}
 html body .rotor-access-panel{left:12px!important;right:12px!important;width:calc(100vw - 24px)!important;top:12px!important;max-height:calc(100dvh - 24px)!important}
 html body.rotor-match-frame.rotor-access-ready.rotor-access-ready .rotor-access-dock{top:100px!important;width:calc(100vw - 24px)!important}
 html body.rotor-match-frame .rotor36-session-tools{top:218px!important}
 html body.rotor36-music-open #pfDeck:not([hidden]){top:184px!important;left:12px!important;right:12px!important;width:auto!important;max-height:calc(100dvh - 200px)!important}
}
@media(max-height:560px) and (orientation:landscape){html body.blue-court-opening #mainMenu{bottom:92px!important;max-height:38vh!important}html body.blue-court-opening #mainMenu h1{font-size:33px!important}html body.blue-court-opening #mainMenu .cm-intro{display:none!important}html body #rotorWorldView.rotor-view-pip{width:200px!important;bottom:82px!important}.rotor36-session-tools{top:104px!important}html body.rotor-access-ready.rotor-access-ready .rotor-access-dock .rotor-access-route{min-height:48px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
@media(prefers-reduced-transparency:reduce){html body :is(.rotor-access-dock,.rotor-access-panel,.rotor-club-center,#pfDeck){background:#060a05!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}
@media(forced-colors:active){html body :is(.rotor-access-dock,.rotor-access-panel,.rotor36-session-tools button,.rotor-view-pip){background:Canvas!important;color:CanvasText!important;border-color:ButtonText!important;box-shadow:none!important}}

html body.blue-court-opening:not(.rotor-access-panel-open):not(.club-center-open):not(.emblem-editor-open) #mainMenu{visibility:visible!important}
html body.blue-court-opening #mainMenu .rotor25-player-line{display:none!important}
html body #rotorWorldView:not(.expanded) .rotor-slide-controls{display:none!important}
html body .rotor-access-route>.rotor-ui3d-icon{display:none!important}

html body.blue-court-opening .cm-view-rail #cmRacketControl{display:flex!important;position:static!important;inset:auto!important;transform:none!important;align-items:center;min-height:44px!important;color:#b6ef3c!important}
html body.blue-court-opening.try-racket .racket-axis-desktop{display:flex!important}
/* Optical glass comes from the scene. CSS blur must never blur the live 3D icons beneath it. */
html body.rotor-access-ready.rotor-access-ready .rotor-access-dock{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:linear-gradient(155deg,#e9ffe20b,#03070522)!important}
html body .rotor-access-dock [data-rotor-ui-3d],html body .rotor-access-panel [data-rotor-ui-3d]{background:transparent!important;box-shadow:none!important;border-color:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body .rotor-access-dock .rotor-access-glyph{background:transparent!important}

html body.three-hero-opening :is(.rotor-access-dock,.rotor36-session-tools,#mainMenu,.cm-header,.rotor-view-toggle,.rotor-view-pip,.cm-view-rail){display:none!important;visibility:hidden!important}
html body.three-hero-opening .three-hero-controls{top:auto!important;bottom:22px!important;right:22px!important}

.rotor36-album-mini{width:30px;height:30px;border-radius:8px;object-fit:cover;border:1px solid #ffffc96e}.rotor36-music-status{font-size:9px;color:#dfff96}.rotor36-session-tools button:first-child{gap:6px;padding:6px 10px}
html body.rotor36-music-open #pfDeck .top{display:flex!important;align-items:center!important;gap:12px!important;margin-bottom:12px!important;position:static!important;padding:0 44px 0 0!important;height:auto!important}
html body.rotor36-music-open #pfDeck .pf-feature-credit{display:grid!important;gap:4px!important}
html body.rotor36-music-open #pfDeck .pf-feature-kicker{display:none!important}
html body.rotor36-music-open #pfDeck .pf-feature-credit strong{font:800 25px/1 Inter,sans-serif!important;color:#f7f9ef!important}
html body.rotor36-music-open #pfDeck .pf-feature-track{font:700 12px/1.2 Inter,sans-serif!important;color:#b6ef3c!important}
html body.rotor36-music-open #pfDeck .rotor36-album{width:60px;height:60px;border-radius:12px;object-fit:cover;border:1px solid #b6ef3c66}
html body.rotor36-music-open #pfDeck .host{aspect-ratio:1!important}
@media(max-width:760px){.rotor36-music-status{display:none}html body.rotor36-music-open #pfDeck .host{max-height:280px!important}}
