/* One toolbar and one available play area, including browser fullscreen. */
body:has(.arcade-main.page-play) {
  --play-nav-h:64px;
  --play-pad:12px;
  --play-area-h:calc(100dvh - 64px - 2 * var(--play-pad));
  overflow:hidden;
}
body:has(.arcade-main.page-play) .arcade-bg { display:none; }
body[data-arcade-design] .arcade-main.page-play {
  display:grid; grid-template-rows:64px minmax(0,1fr);
  width:100%; max-width:none; height:100dvh !important; min-height:0 !important;
  margin:0 !important; padding:0 !important; overflow:hidden; box-sizing:border-box;
  font-family:ArcadeText,"Arial Rounded MT Bold",ui-rounded,sans-serif;
}
body[data-arcade-design] .page-play > .arcade-playbar {
  position:relative; z-index:100; display:flex; align-items:center; justify-content:space-between;
  gap:12px; min-width:0; height:64px; padding:7px 12px; box-sizing:border-box;
  border-bottom:1px solid var(--arcade-border,#cabba0);
  background:var(--arcade-surface,#f8f0dc); color:var(--arcade-ink,#34291f);
}
body[data-arcade-design] .arcade-main.page-play .arcade-playbar > .arcade-nav {
  position:static; inset:auto; z-index:auto; display:flex; flex:0 1 auto; align-items:center;
  min-width:0; height:48px; min-height:0; width:auto; padding:0;
  background:none; border:0; box-shadow:none; backdrop-filter:none; pointer-events:auto;
}
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .nav-balance { display:none; }
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .arcade-profile-menu { position:relative; min-width:0; }
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .arcade-profile-menu > summary {
  width:auto; min-width:0; max-width:none; height:48px; min-height:48px;
  padding:4px 12px 4px 5px; gap:9px; border-width:1px; box-shadow:none; transform:none;
}
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .brand-mark { width:36px; height:36px; flex:0 0 36px; border-radius:10px; }
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .profile-summary-avatar { width:32px; height:32px; }
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .profile-summary-name { max-width:140px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .profile-popover {
  left:0; right:auto; top:calc(100% + 8px); transform:none;
  max-width:calc(100vw - 24px); max-height:calc(100dvh - 78px); overflow:auto;
}
body[data-arcade-design] .arcade-main.page-play .arcade-playbar > .game-utilities {
  position:static; inset:auto; display:flex; flex:0 0 auto; align-items:center;
  width:auto; height:48px; min-height:0; margin:0; padding:0;
  border:0; border-radius:0; box-shadow:none; background:transparent; z-index:auto;
}
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .game-utilities-title { display:none; }
body[data-arcade-design] .arcade-main.page-play .arcade-playbar :is(button,summary,input,select,output,b,strong,span) {
  font-family:ArcadeText,"Arial Rounded MT Bold",ui-rounded,sans-serif;
}
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .game-utilities-actions { gap:6px; }
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .game-utilities :is(button,summary) {
  display:block; min-height:38px; padding:8px 11px; font-size:.8rem; line-height:1.2;
  color:var(--arcade-ink,#34291f); background:var(--arcade-surface-raised,#fffdf5);
}
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .game-controller-button { display:flex; }
body[data-arcade-design] .arcade-main.page-play .arcade-playbar .game-sound-menu > .arcade-sound-settings {
  right:0; margin:0; width:280px; max-width:calc(100vw - 24px); box-sizing:border-box;
}
body[data-arcade-design] .page-play > #game-stage.game-stage {
  --play-area-h:calc(100dvh - 64px - 2 * var(--play-pad));
  display:block !important; width:100%; height:100% !important; min-width:0; min-height:0 !important;
  margin:0 !important; padding:var(--play-pad) !important; box-sizing:border-box;
  overflow:auto; overscroll-behavior:contain; border:0; border-radius:0; box-shadow:none;
}
body[data-arcade-design] .page-play > #game-stage.game-stage::before,
body[data-arcade-design] .page-play > #game-stage.game-stage::after { display:none; }
body[data-arcade-design] .page-play:not(.play-yacht) > #game-stage > .arcade-game-surface {
  --play-area-h:calc(100dvh - 64px - 2 * var(--play-pad));
  width:100% !important; max-width:none !important; min-width:0; min-height:0 !important;
  height:100%; margin:0 !important; align-self:stretch; box-sizing:border-box;
}
body[data-arcade-design] .page-play:not(.play-yacht) #game-stage :is(h1,h2,h3,h4,p,small,span,b,strong,label,button,input,select,textarea,th,td,output,summary) {
  font-family:ArcadeText,"Arial Rounded MT Bold",ui-rounded,sans-serif !important;
}
body[data-arcade-design] .page-play #game-stage .game-abort { display:none !important; }
/* Yacht keeps its established, unpadded tabletop geometry. */
body[data-arcade-design] .page-play.play-yacht > #game-stage { padding:0 !important; }
body[data-arcade-design] .page-play:fullscreen { background:var(--arcade-bg,#f5ead2); }
@media(max-width:1040px) {
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .profile-brand-name { display:none; }
}
@media(max-height:760px) {
  body:has(.arcade-main.page-play) { --play-pad:8px; }
}
@media(max-width:680px) {
  body:has(.arcade-main.page-play) { --play-pad:8px; }
  body[data-arcade-design] .page-play > .arcade-playbar { padding-inline:8px; gap:8px; }
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .brand-mark,
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .profile-summary-name,
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .profile-brand-name { display:none; }
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .arcade-profile-menu > summary { padding:4px 8px; gap:6px; }
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .profile-language-quick { display:flex; }
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .game-utilities-actions { gap:4px; }
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .game-utilities :is(button,summary) { min-height:40px; padding:8px; font-size:.75rem; }
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .game-controller-button b { display:none; }
}
@media(max-width:380px) {
  body[data-arcade-design] .arcade-main.page-play .arcade-playbar .profile-language-quick { display:none; }
}

/* Keep the table clear; rules remain available from the shared toolbar. */
body[data-arcade-design] .page-play #game-stage :is(.flags-table-note,.flags-score > header small,.flags-score > header > span,.you-controller > header > div > small) { display:none; }
body[data-arcade-design] .page-play #game-stage .flags-answer-zone > header > small { display:none; }
body[data-arcade-design] .page-play.play-zapfgenau #game-stage #zf-root.zf-shell {
  height:100%; min-height:0; max-height:none;
}
body[data-arcade-design] .play-zapfgenau #game-stage :is(.zf-header > div:first-child,.zf-target > i,.zf-scene-note,.zf-advice,.zf-countdown > span,.zf-preparing > small) { display:none; }
body[data-arcade-design] .play-zapfgenau #game-stage .zf-header { top:16px; left:20px; right:20px; }
body[data-arcade-design] .play-zapfgenau #game-stage .zf-target { margin-right:auto; border:0; padding:0; text-align:left; }
body[data-arcade-design] .play-zapfgenau #game-stage .zf-target strong { justify-content:flex-start; }
body[data-arcade-design] .play-zapfgenau #game-stage .zf-top-tools { top:20px; right:20px; }
body[data-arcade-design] .play-zapfgenau #game-stage .zf-bottom { left:20px; right:20px; bottom:56px; gap:16px; grid-template-columns:minmax(250px,330px) 1fr minmax(280px,360px); }
body[data-arcade-design] .play-zapfgenau #game-stage .zf-controls { grid-column:3; }
body[data-arcade-design] .play-zapfgenau #game-stage .zf-players { bottom:12px; }
@media(max-width:900px) and (min-width:561px) {
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-bottom { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-controls { grid-column:2; }
}
@media(max-width:560px) {
  body[data-arcade-design] .page-play.play-zapfgenau #game-stage #zf-root.zf-shell { height:100% !important; min-height:0 !important; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-header { top:10px; left:12px; right:12px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-target > span { font-size:9px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-target strong { font-size:30px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-top-tools { top:12px; right:12px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-scene { inset:54px 0 auto; height:clamp(100px,22dvh,180px); }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-bottom { top:auto; left:10px; right:10px; bottom:48px; gap:8px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-meter { padding:8px 12px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-amount { font-size:36px; padding:6px 0; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-meter-stats { padding-top:6px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-meter-stats b { font-size:14px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-controls { padding:10px 12px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-triggers button { min-height:50px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-dose { margin:8px 0; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-controls > p { margin:5px 0 8px; font-size:10px; }
  body[data-arcade-design] .play-zapfgenau #game-stage .zf-mini-target { display:none; }
}
body[data-arcade-design] .play-fruitrush #game-stage :is(.fr-eyebrow,.fr-footer) { display:none; }

/* Fruits phone controllers keep their live controls inside the available area. */
body[data-arcade-design] .arcade-main.page-play:fullscreen {
  padding:0 !important; margin:0 !important;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone {
  display:grid; grid-template-rows:40px auto minmax(90px,1fr) auto;
  gap:8px; width:100%; max-width:570px; height:100% !important; min-height:0 !important;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-header {
  display:flex; justify-content:center; align-items:center; margin:0; gap:0;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-header > div:first-child,
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-utilities,
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-motion > small { display:none; }
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-clock {
  display:flex; align-items:center; gap:12px; min-width:0; padding:4px 12px; border-radius:9px;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-clock b { font-size:24px; line-height:1.1; }
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-clock small { font-size:10px; }
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-status {
  margin:0 !important; font-size:11px !important; line-height:1.25 !important;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-fields {
  min-height:0; height:100%; margin:0; display:block;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-field {
  display:grid; grid-template-rows:32px minmax(0,1fr); height:100%; min-height:0; container-type:size;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-field header { padding:4px 10px; min-height:0; height:32px; }
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-field canvas {
  width:min(100cqw, calc((100cqh - 32px) * 10 / 7)); height:auto; max-height:none;
  min-height:0; aspect-ratio:10 / 7; object-fit:fill; justify-self:center; align-self:center;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-motion {
  margin:0; padding:8px 10px; border-radius:10px;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-motion-head { font-size:11px; gap:5px; }
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-motion p {
  margin:6px 0; font-size:11px; line-height:1.3;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-input-actions { gap:6px; }
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-input-actions button {
  min-height:40px; padding:8px; font-size:11px;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-motion-feedback {
  width:76px; height:30px; margin:6px auto; border-radius:6px;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-motion-feedback :is(span,small) { display:none; }
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-calibrate { margin-top:6px; gap:6px; }
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-calibrate button {
  min-height:40px; padding:7px 9px; font-size:11px;
}
body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-calibrate select { min-height:30px; padding:4px 7px; font-size:11px; }
@media (min-width:600px) and (max-height:500px) {
  body[data-arcade-design] .play-fruitrush #game-stage .fr-phone {
    max-width:none; grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);
    grid-template-rows:36px auto minmax(0,1fr); column-gap:12px; row-gap:6px;
  }
  body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-header { grid-column:1 / -1; grid-row:1; }
  body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-status { grid-column:1; grid-row:2; }
  body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-fields { grid-column:1; grid-row:3; }
  body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-motion {
    grid-column:2; grid-row:2 / 4; align-self:center;
  }
}

body[data-arcade-design] .play-fruitrush #game-stage .fr-phone .fr-points { font-size:22px; line-height:1; }
