/* Separate mobile composition: soft edges do not mean giant purple oval cards. */
@media(max-width:900px) and (orientation:portrait) {
 #game.soft-cabinet #buy,#stage.soft-cabinet #buy,
 #game.soft-cabinet.premium-world #mode.rail-ante,#stage.soft-cabinet.premium-world #ante {
  border:1px solid #efd19a; border-radius:18px; border-image:none;
  background:linear-gradient(160deg,#fff7ddf5,#eed1a1eb); color:#482340; text-shadow:none;
  box-shadow:inset 0 1px #fffaf1,0 2px 5px #41274033; filter:none;
 }
 #game.soft-cabinet #buy>strong,#stage.soft-cabinet #buy>span,
 #game.soft-cabinet #buy .rail-price,#stage.soft-cabinet #buy>#buyPrice,
 #game.soft-cabinet #mode strong,#game.soft-cabinet #mode small,
 #stage.soft-cabinet #ante span,#stage.soft-cabinet #ante strong,#stage.soft-cabinet #ante small { color:#482340; text-shadow:none; }
 #game.soft-cabinet #buy>strong,#stage.soft-cabinet #buy>span { font-size:11px; line-height:1.1; }
 #game.soft-cabinet #buy .rail-price,#stage.soft-cabinet #buy>#buyPrice { font-size:17px; }
 #game.soft-cabinet #mode.rail-ante { gap:1px; padding:4px 6px; }
 #game.soft-cabinet #mode .rail-toggle,#stage.soft-cabinet #anteSwitch { background:#7b4b5522; color:#482340; border-radius:12px; }
 #game.soft-cabinet .mechanics,#game.soft-cabinet .history,
 #stage.soft-cabinet #history,#game.soft-cabinet .rail-feature,
 #stage.soft-cabinet #featureMeter,#stage.soft-cabinet #freeMeter {
  border:0; background:none; box-shadow:none; border-image:none; border-radius:18px;
 }
 #game.soft-cabinet .hud,#stage.soft-cabinet #hud { background:none; border:0; box-shadow:none; }
 #game.soft-cabinet .hud:before { display:none; }
 #game.soft-cabinet #spin,#stage.soft-cabinet #spin { border:2px solid #fff6df; background:#40213e80; box-shadow:0 3px 9px #30132d33; }
 #game.soft-cabinet .money,#stage.soft-cabinet #funds { border:0; border-radius:18px; background:linear-gradient(90deg,transparent,#35162b88,transparent); }
 #game.soft-cabinet { grid-template-rows:40px auto 38px 54px 82px 32px minmax(38px,1fr); gap:4px 10px; }
 #game.soft-cabinet .board-wrap { width:min(100%,calc((100dvh - 380px)*var(--board-ratio))); }
 #game.soft-cabinet .ribbon { min-height:24px; height:24px; }
 #game.soft-cabinet .caption.payout-readout { min-height:30px; height:30px; font-size:10px; }
 #game.soft-cabinet .money { align-self:end; min-height:38px; }
 #game.soft-cabinet .mechanics { align-self:center; max-height:82px; }
 #stage.soft-cabinet {
  grid-template-rows:44px 18px auto 44px 58px 82px 32px minmax(40px,1fr);
  grid-template-areas:'brand brand' 'headline headline' 'board board' 'result result' 'purchase mode' 'spin spin' 'utilities history' 'funds funds';
  gap:4px 8px;
 }
 #stage.soft-cabinet:after { inset:43% 0 0; background:linear-gradient(180deg,transparent,#351c358c 22%,#241725b8); }
 #stage.soft-cabinet #boardSlot { height:min(78.333vw,calc(100dvh - 446px)); align-self:start; }
 #stage.soft-cabinet #board { width:min(100cqw,120cqh); aspect-ratio:6/5; }
 #stage.soft-cabinet #brand span { display:none; }
 #stage.soft-cabinet #brand h1 { margin:0; }
 #stage.soft-cabinet #brand h1 img { width:160px; max-height:42px; }
 #stage.soft-cabinet #spinControls { width:100%; }
 #stage.soft-cabinet #spin { width:62px; height:62px; padding:12px; }
 #stage.soft-cabinet .spinrow { gap:16px; }
 #stage.soft-cabinet .subrow { margin-top:2px; gap:6px; }
 #stage.soft-cabinet #history { padding:0 3px; max-height:32px; overflow:hidden; }
 #stage.soft-cabinet #history:before { display:none; }
 #stage.soft-cabinet .historyRow { font-size:10px; padding:0; }
 #stage.soft-cabinet .historyRow .mini { width:18px; height:18px; }
 #stage.soft-cabinet .utilities { gap:12px; }
 #stage.soft-cabinet .utilities button { width:26px; height:26px; font-size:15px; }
 #stage.soft-cabinet #ante span { font-size:8px; }
 #stage.soft-cabinet #ante strong { font-size:17px; margin:0; }
 #stage.soft-cabinet #ante small { display:none; }
 #stage.soft-cabinet #anteSwitch { margin:0; padding:1px 8px; font-size:7px; }
 #stage.soft-cabinet #buy { padding:3px 8px; }
 #stage.soft-cabinet #status { font-size:9px; }
 #stage.soft-cabinet #funds { padding:4px; font-size:13px; gap:10px; align-self:end; min-height:40px; background:none; color:white; }
 #stage.soft-cabinet #funds span { font-size:8px; }
 #stage.soft-cabinet #featureMultiplier { font-size:24px; }
 #stage.soft-cabinet .powerOrb { width:80px; height:32px; }
 #stage.soft-cabinet #remaining { font-size:25px; }
 #stage.soft-cabinet .freeCount span { font-size:8px; }
 #stage.soft-cabinet #featureMeter span,#stage.soft-cabinet #freeMeter>span { font-size:8px; }
 #stage.soft-cabinet .freeProgress { height:2px; }
}
@media(max-width:900px) and (orientation:portrait) and (max-height:650px) {
 #game.soft-cabinet { grid-template-rows:32px auto 32px 48px 72px 28px minmax(30px,1fr); gap:3px 8px; }
 #game.soft-cabinet .board-wrap { width:min(100%,calc((100dvh - 320px)*var(--board-ratio))); }
 #game.soft-cabinet .mechanics { max-height:72px; }
 #game.soft-cabinet .caption.payout-readout { height:24px; min-height:24px; font-size:9px; }
 #stage.soft-cabinet { grid-template-rows:32px 14px auto 32px 48px 72px 24px minmax(30px,1fr); gap:3px 8px; }
 #stage.soft-cabinet #boardSlot { height:min(78.333vw,calc(100dvh - 273px)); }
 #stage.soft-cabinet #brand h1 img { max-height:30px; }
 #stage.soft-cabinet #spin { width:54px; height:54px; padding:10px; }
 #stage.soft-cabinet #funds { min-height:30px; }
 #stage.soft-cabinet #history { max-height:24px; }
 #stage.soft-cabinet #status { display:none; }
 #stage.soft-cabinet #win { font-size:24px; }
}
