/* ── Responsive: mobile portrait ── */ @media (max-width: 600px) and (orientation: portrait) { body { overflow-y: auto !important; height: auto !important; } #app { grid-template-columns: 1fr !important; grid-template-rows: 38px auto auto 44px 22px !important; height: auto !important; overflow: visible !important; } #panel-left { grid-column: 1; grid-row: 2; height: 80px; flex-direction: row; } #decks-area { grid-column: 1; grid-row: 3; grid-template-columns: 1fr 1fr !important; height: 300px; } #panel-right { display: none; } #xf-section { grid-column: 1; grid-row: 4; } #outs-bar { grid-column: 1; grid-row: 5; } } /* ── Keep landscape (mobile + desktop) always showing the grid ── */ @media (orientation: landscape), (min-width: 601px) { body { overflow: hidden !important; height: 100dvh !important; } #app { display: grid !important; grid-template-rows: 38px 1fr 44px 22px !important; grid-template-columns: 52px 1fr 52px !important; height: 100dvh !important; overflow: hidden !important; } #panel-left { grid-column: 1 !important; grid-row: 2 !important; display: flex !important; } #decks-area { grid-column: 2 !important; grid-row: 2 !important; } #panel-right { grid-column: 3 !important; grid-row: 2 !important; display: flex !important; } #xf-section { grid-column: 1/-1 !important; grid-row: 3 !important; } #outs-bar { grid-column: 1/-1 !important; grid-row: 4 !important; } } /* ── Tap targets ── */ .src-btn { min-height: 18px; } .d-play { min-width: 24px; min-height: 24px; } .fxbtn { min-height: 28px; } .mpill { min-height: 26px; min-width: 40px; } .tb-btn { min-height: 38px; }