/* Tablets use the desktop composition. Touch input does not imply a phone layout. */
@media(min-width:600px){
html[data-phone-device="false"][data-touch-device="true"] body :is(.im-standard-intro,#menu,#intro){box-sizing:border-box!important;height:var(--game-height,var(--web-height,100dvh))!important;min-height:0!important;overflow:hidden!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) .im-intro-header{position:relative!important;top:auto!important;flex:0 0 64px!important;height:64px!important;min-height:64px!important;padding:4px 24px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) .im-intro-brand{gap:12px!important;font-size:18px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) .im-intro-brand img{width:64px!important;height:48px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) .im-intro-brand b{font-size:18px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) .im-intro-menu{font-size:14px!important;padding:9px 14px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-body,.menu-layout){box-sizing:border-box!important;display:grid!important;flex:1 1 0!important;min-height:0!important;height:auto!important;width:calc(100% - 24px)!important;margin:0 auto!important;padding:12px 0!important;gap:12px!important;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr)!important;grid-template-rows:minmax(0,1fr)!important;overflow:hidden!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-story,.menu-hero){display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;grid-template-rows:minmax(0,1fr)!important;align-items:center!important;align-self:stretch!important;justify-content:normal!important;box-sizing:border-box!important;height:100%!important;min-height:0!important;max-height:none!important;padding:clamp(12px,2vw,28px)!important;gap:12px!important;overflow:hidden!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-story>div:first-child,.hero-copy){width:auto!important;min-width:0!important;max-width:100%!important;grid-column:1!important;grid-row:1!important;align-self:center!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-art,.pizza-hero){position:static!important;inset:auto!important;grid-column:2!important;grid-row:1!important;align-self:center!important;justify-self:center!important;flex:none!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:100%!important;margin:0!important;object-fit:contain!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-story,.menu-hero) h1{font-size:clamp(25px,3.2vw,48px)!important;line-height:1.08!important;text-align:start!important;margin:0!important;overflow-wrap:normal!important;word-break:normal!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) .im-intro-category{display:block!important;font-size:11px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-lead,.menu-hero .intro){display:block!important;font-size:clamp(13px,1.4vw,18px)!important;line-height:1.45!important;margin:14px 0 0!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-setup,.menu-settings){box-sizing:border-box!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;height:100%!important;min-height:0!important;padding:clamp(12px,2vw,28px)!important;gap:10px!important;overflow:hidden!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-setup,.menu-settings) h2{flex:none!important;font-size:clamp(22px,2.5vw,32px)!important;line-height:1.1!important;margin:0 0 4px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-controls,.menu-fields){display:flex!important;flex-direction:column!important;flex:1 1 0!important;min-height:0!important;gap:9px!important;overflow:auto!important;overscroll-behavior:contain}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) .im-intro-field{flex:none!important;width:100%!important;gap:5px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-field,.menu-fields) label{font-size:13px!important;line-height:1.2!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-segment,.menu-choices){flex-wrap:nowrap!important;gap:7px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-select,.menu-fields select){font-size:16px!important;height:42px!important;min-height:42px!important;padding:7px 10px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-choice,.menu-choices button){font-size:14px!important;height:40px!important;min-height:40px!important;padding:6px!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) .start-area{flex:none!important;margin-top:0!important;padding-top:0!important}
html[data-phone-device="false"][data-touch-device="true"] body :is(#menu,#intro,.im-standard-intro) :is(.im-intro-start,#start){flex:none!important;height:48px!important;min-height:48px!important;margin:0!important;padding:8px 12px!important;font-size:18px!important}
}
/* Tablet Chairs: separate the room, counter and optional control row. */
@media(min-width:600px){
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell{height:calc(var(--game-height,100dvh) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;padding:0 12px 10px!important;min-height:0!important;gap:6px!important}
html[data-phone-device="false"][data-touch-device="true"][data-controls-enabled="true"] body.im-native-game #root .chairs-shell{padding-bottom:76px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell .bowling-nav{flex:0 0 56px!important;height:56px!important;min-height:56px!important;padding:6px 240px 6px 8px!important;align-items:center!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell .bowling-title{font-size:20px!important;line-height:24px!important;letter-spacing:0!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell .nav-right{position:static!important;inset:auto!important;margin:0!important;max-width:none!important;flex:none!important;font-size:15px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell .chair-heading{flex:0 0 auto!important;min-height:24px!important;max-height:48px!important;height:auto!important;padding:0!important;font-size:18px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell .web-pick-child{font-size:18px!important;line-height:24px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell .chair-stage{flex:1 1 0!important;box-sizing:border-box!important;width:100%!important;max-width:none!important;min-height:0!important;height:auto!important;margin:0!important;border-width:4px!important;border-radius:22px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell .chair-counter{box-sizing:border-box!important;flex:0 0 76px!important;width:100%!important;max-width:none!important;min-height:76px!important;height:76px!important;margin:0!important;padding:6px 14px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr)!important;align-items:center!important;gap:14px!important;border-width:4px!important;overflow:visible!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell .chair-big-number{grid-column:2!important;grid-row:1!important;justify-self:center!important;width:64px!important;height:64px!important;margin:0!important;box-sizing:border-box!important;font-size:40px!important;line-height:1!important;border-width:4px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .chairs-shell .chair-counter :is(b,button){grid-column:1!important;grid-row:1!important;min-width:0!important;max-width:100%!important;white-space:normal!important;font-size:16px!important;line-height:20px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game:has(.chairs-shell) #web-touch-controls{inset:auto 12px calc(12px + env(safe-area-inset-bottom)) auto!important;justify-content:flex-end!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game:has(.chairs-shell) #web-touch-controls button{width:56px!important;height:56px!important;font-size:26px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game:has(.chairs-shell) #immersivemind-game-settings{height:40px!important;min-height:40px!important;max-height:40px!important;font-size:14px!important;top:calc(env(safe-area-inset-top) + 8px)!important;right:12px!important}
}
/* Tablet map and journey information retain readable desktop proportions. */
@media(min-width:600px){
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #phone{box-sizing:border-box!important;top:calc(64px + env(safe-area-inset-top))!important;right:max(12px,env(safe-area-inset-right))!important;left:auto!important;width:clamp(200px,22vw,280px)!important;max-width:36%!important;max-height:calc(var(--game-height,100dvh) - 150px)!important;border-width:5px!important;border-radius:20px!important;overflow:hidden!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #map-canvas{display:block!important;width:100%!important;height:clamp(130px,20vh,190px)!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #phone .phone-header{display:flex!important;font-size:14px!important;padding:7px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #navigation-instruction{font-size:14px!important;line-height:18px!important;padding:8px!important;min-height:0!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #journey-panel{box-sizing:border-box!important;top:calc(64px + env(safe-area-inset-top))!important;left:max(12px,env(safe-area-inset-left))!important;right:auto!important;width:clamp(220px,24vw,300px)!important;max-width:40%!important;padding:12px!important;font-size:15px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #journey-panel h2{font-size:18px!important}
}

/* Tablet Bowling: retain every monitor section and fit the complete side panel. */
@media(min-width:600px){
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .bowling-shell .bowling-layout{box-sizing:border-box!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,32%)!important;grid-template-rows:minmax(0,1fr)!important;height:calc(var(--game-height,100dvh) - 48px)!important;min-height:0!important;gap:10px!important;padding:8px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .bowling-side-stack{display:flex!important;flex-direction:column!important;height:100%!important;max-height:100%!important;min-height:0!important;gap:8px!important;overflow:hidden!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .score-computer{position:static!important;display:flex!important;flex-direction:column!important;flex:1 1 0!important;min-height:0!important;height:auto!important;width:100%!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .monitor-bezel{box-sizing:border-box!important;flex:1 1 0!important;min-height:0!important;display:flex!important;padding:6px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .monitor-screen{box-sizing:border-box!important;display:flex!important;flex-direction:column!important;gap:4px!important;width:100%!important;min-height:0!important;padding:6px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .monitor-screen header :is(b,span,i){font-size:10px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .counting-window{box-sizing:border-box!important;flex:1 1 0!important;min-height:64px!important;margin-top:3px!important;padding:5px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .counting-window>div{display:grid!important;min-height:0!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .counting-window span{height:18px!important;font-size:11px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .counting-window>strong{font-size:32px!important;line-height:34px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .counting-window small{font-size:12px!important;line-height:16px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .monitor-result{flex:none!important;margin-top:3px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .monitor-result span{padding:5px!important;font-size:10px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .monitor-result b{font-size:26px!important;line-height:28px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .monitor-screen footer{display:block!important;position:static!important;padding:2px!important;font-size:7px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .monitor-neck{display:block!important;flex:0 0 18px!important;height:18px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .monitor-stand{display:block!important;flex:0 0 12px!important;height:12px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .bowling-aim.mouse-legend{display:block!important;position:static!important;flex:none!important;padding:8px!important;max-width:100%!important;box-sizing:border-box!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .bowling-aim.mouse-legend :is(b,span){display:none!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .bowling-aim.mouse-legend:before{content:'Tap the lane to aim. Tap the ball to roll. Use ↶ and ↷ to change spin.';display:block;font:600 12px/1.35 system-ui;color:white}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game #root .bowling-aim.mouse-legend small{display:block!important;font-size:9px!important;padding-top:5px!important;margin-top:5px!important}
html[data-phone-device="false"][data-touch-device="true"] body.im-native-game:has(.bowling-shell) #web-bowling-controls button{width:52px!important;height:52px!important}
}
