/* Shared touch, orientation and optional voice controls. */
html{ -webkit-text-size-adjust:100%;scroll-padding-top:12px}button,select,input{touch-action:manipulation}input,select{font-size:16px}button{min-height:44px}button:focus-visible{outline:3px solid #b5ff60;outline-offset:2px}.rotate-hint{display:none}.voice-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.voice-toggle{font-size:12px;padding:8px 10px;white-space:nowrap}.voice-toggle[aria-pressed=true]{background:#a6ee75;color:#102016;border-color:#a6ee75}.voice-status{font:11px system-ui;color:#b9d9c9;max-width:170px}.voice-dialog{box-sizing:border-box;background:#14252c;color:#edf5fa;border:1px solid #89b98d;border-radius:16px;padding:22px;width:min(460px,calc(100% - 24px));max-height:85dvh;overflow:auto}.voice-dialog::backdrop{background:#000b}.voice-dialog h2{font:600 23px system-ui;letter-spacing:0}.voice-dialog p{font:15px/1.5 system-ui;color:#c4d6d0}.voice-dialog .voice-dialog-actions{display:flex;gap:8px;flex-wrap:wrap}.voice-dialog button{font:600 14px system-ui;min-height:44px;padding:10px 14px}.voice-dialog .voice-enable{background:#b5ff60;color:#14220a}
@media(max-width:600px) and (orientation:portrait){.rotate-hint{display:block;position:sticky;top:0;z-index:15;padding:12px max(14px,env(safe-area-inset-left));background:#c9ef91;color:#14220a;font:600 14px/1.4 system-ui;text-align:center}.rotate-hint small{display:block;font-weight:400}body.playing .rotate-hint,body.focus-game .rotate-hint,body.luminaris-focus .rotate-hint{position:fixed;inset:0 0 auto}body.playing .arena,body.focus-game .arena,body.luminaris-focus .game{padding-top:75px!important}}
@media(min-width:601px) and (max-width:1366px){button,select{min-height:44px}.voice-status{max-width:150px}}
@media(orientation:landscape) and (max-height:600px){.voice-status{position:absolute;left:max(12px,env(safe-area-inset-left));bottom:max(3px,env(safe-area-inset-bottom));font-size:10px;max-width:70vw;z-index:8;pointer-events:none}.voice-toggle{padding:6px 8px;min-height:44px}.voice-tools{flex-wrap:nowrap}}

@media(min-width:601px) and (max-width:1366px){.profile{width:min(100%,500px)}.arena{grid-template-columns:minmax(0,360px) minmax(180px,230px);gap:16px}.mode-list{grid-template-columns:repeat(5,minmax(0,1fr))}.touch button{min-height:48px}.focus-game .arena{grid-template-columns:minmax(180px,calc((100dvh - 260px)/2)) 230px}.focus-game aside{margin-top:30px}}
@media(orientation:landscape) and (max-width:1366px){.focus-game .arena{max-width:none;width:100%;height:100dvh;inset:0;display:grid;grid-template-columns:minmax(0,1fr) 150px;grid-template-rows:44px minmax(0,1fr);align-content:stretch;gap:4px 12px;padding:4px max(8px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));overflow:hidden}.focus-game .arena-toolbar{min-height:44px;grid-column:1/-1;padding:0;max-width:none}.focus-game .arena-toolbar>div{align-items:center}.focus-game .game{height:100%;width:100%;min-width:0;max-width:none;display:grid;grid-template-columns:minmax(64px,1fr) minmax(0,calc((100dvh - 90px - env(safe-area-inset-top) - env(safe-area-inset-bottom))/2)) minmax(64px,1fr);grid-template-rows:22px minmax(0,1fr);gap:0 8px}.focus-game .board-caption{grid-column:2;grid-row:1;min-height:22px;font-size:11px;margin:0}.focus-game .board-caption span{display:none}.focus-game .board-wrap{grid-column:2;grid-row:2;align-self:start;max-height:100%;border-radius:4px}.focus-game #board{height:auto;width:100%}.focus-game .touch{display:contents;transform:none}.focus-game .touch button{grid-row:2;max-width:68px;width:100%;height:48px;min-height:44px;justify-self:center;align-self:center;position:relative;left:auto;transform:none}.focus-game [data-action=left]{grid-column:1;transform:translateY(-55px)}.focus-game [data-action=down]{grid-column:1}.focus-game [data-action=right]{grid-column:1;transform:translateY(55px)}.focus-game [data-action=rotate]{grid-column:3;transform:translateY(-55px)}.focus-game [data-action=hold]{grid-column:3}.focus-game [data-action=drop]{grid-column:3;transform:translateY(55px)}.focus-game .touch [data-action=power]{grid-column:3;transform:translateY(110px);min-height:44px}.focus-game aside{display:flex;flex-direction:column;align-items:stretch;justify-content:center;margin:0;padding:6px;gap:6px;max-width:none;border:0;background:none}.focus-game aside .clock,.focus-game aside .stat{border:0;padding:0}.focus-game aside label{font-size:9px}.focus-game aside strong,.focus-game aside .stat strong{font-size:19px;margin:0}.focus-game aside .two{display:flex;gap:14px}.focus-game aside .next,.focus-game aside .record,.focus-game aside .note,.focus-game #restart{display:none}.focus-game aside>.secondary{font-size:11px;padding:6px;min-height:44px}.focus-game #mini{height:38px;width:120px}}
@media(orientation:landscape) and (max-height:360px){.focus-game .touch [data-action=power]{transform:translateY(88px);height:44px}.focus-game [data-action=drop]{transform:translateY(42px)}.focus-game [data-action=hold]{transform:translateY(-4px)}.focus-game [data-action=rotate]{transform:translateY(-50px)}.focus-game aside .clock{display:none}}
@media(orientation:landscape) and (max-width:1366px){.focus-game .touch [data-action=left]{transform:translateY(-55px)}.focus-game .touch [data-action=down]{transform:none}.focus-game .touch [data-action=right]{transform:translateY(55px)}.focus-game .touch [data-action=rotate]{transform:translateY(-55px)}.focus-game .touch [data-action=hold]{transform:none}.focus-game .touch [data-action=drop]{transform:translateY(55px)}}
@media(orientation:landscape) and (max-height:360px){.focus-game .touch [data-action=rotate]{transform:translateY(-50px)}.focus-game .touch [data-action=hold]{transform:translateY(-4px)}.focus-game .touch [data-action=drop]{transform:translateY(42px)}.focus-game .touch [data-action=power]{transform:translateY(88px)}}
@media(orientation:landscape) and (max-width:1366px){.focus-game #overlay{padding:8px;gap:8px}.focus-game #overlay .mark{font-size:24px;line-height:1}.focus-game #overlay h2{font-size:clamp(13px,1.8vw,22px);overflow-wrap:anywhere}.focus-game #overlay p{font-size:12px;line-height:1.35}.focus-game #start{font-size:11px;padding:8px;min-height:44px;max-width:100%;margin-top:0}}
