/* Phone portrait only. Tablet and landscape retain their approved layouts. */
@media(max-width:500px) and (orientation:portrait){
 :root{--phone-nav:calc(58px + env(safe-area-inset-bottom,0px));--phone-bottom:calc(var(--phone-nav) + 44px)}
 #scoutMainNav{height:var(--phone-nav)!important;padding-bottom:env(safe-area-inset-bottom,0px)!important}
 #v34510Tabs{bottom:var(--phone-nav)!important;height:44px!important;min-height:44px!important;display:flex!important}
 #scoutMainPage{bottom:var(--phone-nav)!important}
 #fieldPanel,#v34513Page{bottom:var(--phone-bottom)!important}
 #approvedLive{inset:0 0 var(--phone-bottom)!important;height:auto!important;max-height:none!important;display:block!important;overflow:auto!important;padding:4px!important;box-sizing:border-box!important}
 #approvedLive[hidden]{display:none!important}
 #approvedCanvas{display:flex!important;flex-direction:column!important;gap:4px!important;width:100%!important;height:auto!important;max-height:none!important;max-width:none!important;overflow:visible!important;margin:0!important;box-sizing:border-box!important}
 #approvedLiveImage,#liveScores,#v343Bases,#v343Matchup,#liveHotspots,#v3457Foot{display:none!important}
 #v3457Score{order:0;display:grid!important;grid-template-columns:1.35fr .8fr .8fr;gap:6px;align-items:center;min-height:58px;padding:5px 8px;background:linear-gradient(#113d68,#061a33);border:1px solid #4f7694;border-radius:8px;color:white;font:700 12px system-ui;box-sizing:border-box}
 #v3457Score small{display:block;font-size:10px;color:#bdddf0;line-height:1.4}
 #v3457Count{text-align:center;font-size:16px}
 #v3457Bases{display:flex;justify-content:center;gap:7px;margin:5px}
 #v3457Bases span{width:11px;height:11px;display:block;transform:rotate(45deg);border:2px solid #d7e6f3;border-radius:2px;background:#183b5c}
 #v3457Bases span.on{background:#ffbd35}
 #approvedCanvas>.bioUnit{order:1;display:block!important;padding:0!important;min-height:0!important}
 #scoutAtBat{padding:5px 8px;min-height:0!important;border-radius:8px}
 .abEyebrow{font-size:9px}.abIdentity{font-size:12px;margin:2px 0}.abStatus,.abPrevious{font-size:10px;line-height:1.25}.abPrevious{margin-top:3px;padding-top:3px}
 #abBanner{padding:6px}#abBanner strong{font-size:16px}
 #v34511ViewOptions{order:2;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:0!important;max-height:none!important}
 #v34511ViewOptions button{font:700 11px system-ui;min-height:32px;padding:3px;background:#153e60;color:white;border:1px solid #6f94af;border-radius:6px}
 #v34511ViewOptions button.selected{background:#0879bf;border:2px solid #b3e7ff}
 #v3457Scene{order:3;display:block!important;position:relative!important;width:min(100%,calc(29dvh * 1.54683));aspect-ratio:1024/662;flex:none!important;align-self:center;background-size:100% 100%!important;background-position:center!important;background-repeat:no-repeat;border-radius:7px;overflow:hidden}
 #liveZone{z-index:4!important}#livePitchDot{z-index:5!important}
 #v34511ScoringDock{order:4;position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-height:none!important;overflow:visible!important;padding:0!important;box-sizing:border-box;z-index:10!important}
 #v34511ScoringDock .unit{padding:0!important;border:0!important;background:none!important}
 #v34511ScoringDock .head{display:none!important}
 #v34511ScoringDock .controls{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px!important}
 #v34511ScoringDock button{min-width:0;min-height:40px!important;padding:3px!important;font:750 12px system-ui;color:#fff;background:#153e60;border:1px solid #6f94af;border-radius:7px;touch-action:manipulation}
 #v34511ScoringDock .scout-icon{font-size:12px}
 #v34511ScoringDock button[data-action="Catcher View"],#v34511ScoringDock button[data-action="Pitcher View"],#v34511ScoringDock button[data-action="Batter right"],#v34511ScoringDock button[data-action="Batter left"]{display:none!important}
 #v34511ScoringDock button[data-action="Field View"]{display:block!important}
 #v34511ViewSwitch{display:none!important}
 body.playFocus #v34511ViewSwitch{display:block!important;position:fixed!important;top:3px!important;right:5px!important;z-index:220!important;min-height:36px;padding:5px;background:#0879bf;color:#fff;border:1px solid #b3e7ff;border-radius:6px}
}
@media(max-width:500px) and (orientation:portrait){
 /* The matchup card is reparented on phones, so hide its retired siblings here too. */
 #approvedCanvas>.bioUnit>.head,#approvedCanvas>.bioUnit>.bio{display:none!important}
 #v34510Tabs{position:fixed!important;top:auto!important;left:0!important;right:0!important;z-index:9998!important;padding:0!important;gap:3px!important;box-sizing:border-box!important;background:#071a30!important}
 #v34510Tabs button{min-height:44px!important;margin:0!important;padding:3px!important;font-size:12px!important}
 #approvedCanvas>.pitchAdvanceBar{order:5;position:relative!important;inset:auto!important;z-index:10!important;display:grid!important;grid-template-columns:1fr 1fr;padding:0!important;gap:4px;background:transparent!important}
 #approvedCanvas>.pitchAdvanceBar button{min-height:38px!important;padding:3px!important;font-size:12px!important;background:#153e60;color:#fff;border:1px solid #6f94af;border-radius:7px}
 #approvedCanvas>.pitchAdvanceBar button:disabled{opacity:.45}
 #approvedCanvas>#pitchAdvanceHint{order:6;position:static!important;min-height:0!important;padding:0 4px!important;color:#b6d2e4;font-size:10px!important}
 #approvedCanvas>#pitchAdvanceHint:empty{display:none!important}
 #v3457Scene{width:min(100%,calc(24dvh * 1.54683))!important}
 #v34511ViewOptions button{min-height:30px!important}
 #phoneSprayButton{display:block!important;background:#235d79!important;border-color:#d2b56d!important}
 #phoneSprayDialog{position:fixed;inset:0;z-index:10040;background:#071b30;color:#edf5fa;overflow:auto;padding:max(12px,env(safe-area-inset-top)) 10px max(12px,env(safe-area-inset-bottom));box-sizing:border-box}
 #phoneSprayDialog[hidden]{display:none!important}
 #phoneSprayDialog>button{min-height:44px;padding:8px 14px;margin-bottom:12px;background:#235d79;color:white;border:1px solid #95bfd8;border-radius:8px;font:700 14px system-ui}
 #phoneSprayDialog .spray{display:block!important;background:#123550;border:1px solid #6d8ca4;border-radius:10px;padding:8px}
 #phoneSprayDialog .head{font:800 13px system-ui;color:#cce7fa;margin-bottom:8px}
 #phoneSprayDialog #v3456Spray{height:250px!important;max-height:45dvh!important;min-height:150px!important}
 #phoneSprayDialog #v3459Range{display:flex;gap:5px;margin:8px 0}
 #phoneSprayDialog #v3459Range button{flex:1;min-height:40px;padding:5px;background:#214f70;color:white;border:1px solid #90b1c8;border-radius:7px}
 #phoneSprayDialog #v3459Range button.selected{border:2px solid #ffdc63}
 #phoneSprayDialog #v34510TrajectoryLegend{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0}
 #phoneSprayDialog .legendItem{display:flex;align-items:center;gap:5px;color:#edf5fa}
 #phoneSprayDialog .v34510ResultLegend{font-size:11px;color:#cce7fa}
 #v3458Clock{font-size:9px!important;white-space:normal;overflow-wrap:anywhere}
}
#phoneSprayButton{display:none}
#phoneSprayDialog[hidden]{display:none!important}

/* Final phone sizing: enlarge the proportional scene and keep utility controls compact. */
@media(max-width:500px) and (orientation:portrait){
 #approvedCanvas{gap:3px!important}
 #v34511ViewOptions{padding-bottom:2px!important;border-bottom:1px solid #53788e;gap:3px!important}
 #v34511ViewOptions button{min-height:28px!important;padding:2px!important}
 #v3457Scene{width:min(100%,calc(34dvh * 1.54683))!important;z-index:auto!important}
 #v34511ScoringDock{border-top:1px solid #53788e!important;padding-top:3px!important}
 #v34511ScoringDock .controls{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:3px!important}
 #v34511ScoringDock .controls button{grid-column:span 2!important;min-height:36px!important;padding:2px!important;font-size:11px!important}
 #v34511ScoringDock .controls button[data-action="Undo"],#v34511ScoringDock .controls button[data-action="Field View"]{grid-column:span 3!important}
 #approvedCanvas>.pitchAdvanceBar{gap:3px!important}
 #approvedCanvas>.pitchAdvanceBar button{min-height:34px!important;font-size:11px!important;padding:2px!important}
 #v3457Scene>#phoneSprayButton{position:absolute;top:5px;right:5px;z-index:20;min-height:32px;padding:5px 8px;font:750 11px system-ui;color:#fff3c5;background:#123750ee!important;border:1px solid #d2b56d;border-radius:7px;pointer-events:auto;touch-action:manipulation;box-shadow:0 1px 5px #0007}
}

/* iPhone field workflow: keep confirmation controls inside the visible viewport. */
@media(max-width:500px) and (orientation:portrait){
 body.playFocus #scoutMainNav,body.playFocus #v34510Tabs{display:none!important}
 body.playFocus #fieldPanel{position:fixed!important;inset:20px 0 0!important;height:auto!important;max-height:none!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;box-sizing:border-box!important}
 body.playFocus #fieldPanel .fieldbody{flex:1 1 0!important;min-height:80px!important;overflow:hidden!important}
 body.playFocus #fieldsvg{height:100%!important;max-height:100%!important;aspect-ratio:auto!important}
 body.playFocus #playDock{flex:0 1 auto!important;height:auto!important;min-height:0!important;max-height:48dvh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;display:flex!important;flex-direction:column!important;gap:5px!important;padding:7px 10px max(10px,env(safe-area-inset-bottom))!important;touch-action:pan-y}
 body.playFocus #playDock[hidden]{display:none!important}
 body.playFocus #playDock>*{flex-shrink:0!important}
 body.playFocus #playNavigation{position:sticky!important;bottom:0!important;z-index:2;background:#0c2b49;padding:4px 0!important;display:flex!important;gap:5px!important}
 body.playFocus #playNavigation button{flex:1;min-height:44px!important}
 body.playFocus #v34511ViewSwitch{display:none!important}
}

/* 3.45.41 guided phone scoring, portrait and compact landscape. */
.contextPhone #scoutMainNav,.contextPhone #v34510Tabs{display:none!important}
#phoneContextBar,#phoneContextSheet,#phonePlayMore{display:none}
.contextPhone #phoneContextBar{position:fixed;inset:auto 0 0;z-index:10032;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 10px max(5px,env(safe-area-inset-bottom));min-height:52px;box-sizing:border-box;background:#0b2842;border-top:1px solid #6b8ca5;color:#c0d6e5;font:11px system-ui}
.contextPhone #phoneContextBar button{min-height:40px;padding:6px 14px;border:1px solid #7dabc7;border-radius:8px;background:#194a70;color:white;font:700 13px system-ui}
.contextPhone #approvedLive{bottom:calc(56px + env(safe-area-inset-bottom))!important;height:auto!important;max-height:none!important}
.contextPhone #scoutMainPage,.contextPhone #v34513Page{bottom:calc(56px + env(safe-area-inset-bottom))!important}
.contextPhone #v34511ViewOptions{display:none!important}
.contextPhone body.playFocus #phoneContextBar{display:none!important}
.contextPhone body.playFocus #fieldPanel{position:fixed!important;inset:20px 0 0!important;height:auto!important;max-height:none!important;display:flex!important;flex-direction:column!important;min-height:0!important;overflow:hidden!important}
.contextPhone body.playFocus #fieldPanel h2{flex:0 0 44px!important;min-height:44px!important;padding:5px 10px!important;font-size:14px!important}
.contextPhone body.playFocus #fieldHeading{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.contextPhone body.playFocus #fieldPanel .fieldbody{flex:1 1 0!important;min-height:60px!important;overflow:hidden!important;display:flex!important}
.contextPhone body.playFocus #fieldsvg{width:100%!important;height:100%!important;max-height:100%!important;aspect-ratio:auto!important}
.contextPhone body.playFocus #v34511ViewSwitch,.contextPhone body.playFocus #v341FieldBack{display:none!important}
.contextPhone body.playFocus #playDock{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr) auto!important;gap:4px!important;height:auto!important;max-height:48dvh!important;min-height:0!important;flex:0 1 auto!important;overflow:hidden!important;padding:6px 10px max(8px,env(safe-area-inset-bottom))!important;background:#0b2842!important}
.contextPhone #playDock[hidden]{display:none!important}
.contextPhone #playPrompt{grid-row:1!important;min-height:0!important;background:transparent!important;border:0!important;padding:0!important}
.contextPhone #playQuestion{display:none!important}
.contextPhone #playTrail{font:700 12px system-ui!important;line-height:18px!important;color:#dcecf7!important;background:transparent!important;white-space:normal!important;margin:0!important;padding:0!important}
.contextPhone #phonePlayBody{grid-row:2;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}
.contextPhone #playHint{position:static!important;white-space:normal!important;font:12px system-ui!important;background:transparent!important;color:#ffdf97!important;margin:3px 0!important}
.contextPhone #playChoices{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;gap:5px!important;margin:0!important}
.contextPhone #playChoices button{min-height:44px!important;height:auto!important;font-size:13px!important;padding:6px!important;min-width:0!important}
.contextPhone #playSummary{white-space:normal!important;font:12px system-ui!important;color:#c3dfef!important;margin:3px 0!important}
.contextPhone #playActions{display:none!important}
.contextPhone #playNavigation{grid-row:3!important;position:static!important;display:flex!important;gap:6px!important;margin:0!important;padding:3px 0 0!important;min-height:44px!important;background:#0b2842!important;flex-wrap:nowrap!important}
.contextPhone #playNavigation button{min-height:44px!important;height:auto!important;font-size:13px!important;flex:1 1 0!important}
.contextPhone #playNavigation #phonePlayMore{display:block!important;flex:0 0 44px!important;font-size:22px!important}
.contextPhone .phoneUtility{display:none!important}
.contextPhone #phoneContextSheet:not([hidden]){display:block;position:fixed;inset:20px 0 0;z-index:10050;overflow-y:auto;box-sizing:border-box;background:#0b2842;color:#eff7ff;padding:14px 14px max(20px,env(safe-area-inset-bottom));font:15px system-ui}
#phoneContextSheet[hidden]{display:none!important}
#phoneContextSheet h2{font:700 20px system-ui;margin:0 0 12px}
#phoneContextSheet button{min-height:46px;padding:9px 12px;border:1px solid #7398b2;border-radius:9px;background:#194a70;color:white;font:700 14px system-ui;text-align:left}
#phoneMenuItems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}
/* Reason buttons remain part of the current runner decision, inside the scroll area. */
.contextPhone #phonePlayBody #playActions{display:flex!important;flex-wrap:wrap;gap:5px!important}
.contextPhone #phonePlayBody #playActions:empty{display:none!important}
.contextPhone #phonePlayBody #playActions button{min-height:40px!important;padding:5px 9px!important;font-size:12px!important}
.contextPhone body.playFocus #returnPitch,.contextPhone body.playFocus #fieldPanel .viewBack{display:none!important}
.contextPhone body.playFocus #fieldPanel.locationActive #playDock{display:grid!important;height:auto!important;flex-basis:auto!important;align-items:stretch!important}
.contextPhone #approvedCanvas>.pitchAdvanceBar button:disabled{display:none!important}
