/* Responsive layout only: colors and game artwork stay in the approved theme. */
.game-more { position:relative; margin-left:auto; }
.game-more > summary { display:flex; align-items:center; justify-content:center; cursor:pointer; list-style:none; }
.game-more > summary::-webkit-details-marker { display:none; }
.game-more-options { position:absolute; z-index:8; top:calc(100% + 6px); right:0; width:220px; padding:12px; display:grid; gap:8px; border:2px solid var(--border); border-radius:12px; background:var(--surface); box-shadow:0 6px 20px var(--overlay); }
[data-expanded='true'] #btn-full { display:none; }
.assembly-viewport { width:100%; min-width:0; overflow:auto; overscroll-behavior:contain; }
.field-wrap .assembly-viewport canvas { display:block; max-width:none; }
.assembly-view-tools, .assembly-piece-controls { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:8px; padding:8px 12px; }
.assembly-view-tools { order:0; width:100%; }
.assembly-view-tools span { min-width:4em; text-align:center; }
.assembly-precision { order:2; width:100%; padding:8px 12px; }
.assembly-precision summary { cursor:pointer; min-height:48px; padding:12px; text-align:center; }
.assembly-precision summary:focus-visible, .game-more summary:focus-visible { outline:3px solid var(--focus); outline-offset:2px; }
.assembly-piece-status { text-align:center; padding:8px; }
.assembly-piece-status:empty { display:none; }
@media(max-width:680px), (max-height:500px) and (orientation:landscape) {
  .bar { padding:6px 8px; }
  .bar-actions { flex-wrap:nowrap; align-items:center; }
  [data-game] .bar .btn { flex:none; font-size:14px; padding:8px 12px; }
  [data-game] .bar .game-more-options .btn { width:100%; }
  [data-game-ui] .strip { padding:8px 12px; gap:8px 12px; }
  [data-game-ui] .strip .spacer { display:none; }
  [data-game='groundwork'] #screen-groundwork { padding-top:8px; }
  [data-game='groundwork'] .stats { padding:4px 8px; }
  [data-game='groundwork'] .stats dd { font-size:16px; }
  [data-game='groundwork'] .side .panel:not(.stats) { display:flex; align-items:center; justify-content:center; gap:8px; padding:4px 8px; }
  [data-game='groundwork'] .glyph { width:48px; height:30px; margin:0; }
  [data-game='groundwork'] #gw-touch { gap:6px; padding:8px; }
  [data-game-ui] .ronda-hand-controls { display:flex; justify-content:center; gap:6px; padding:8px; }
  [data-game-ui] .ronda-hand-controls .btn { flex:0 0 calc((100% - 12px)/3); min-width:0; min-height:56px; padding:8px 4px; font-size:14px; }
  .domino-hand-controls { display:flex; justify-content:center; gap:8px; padding:8px; }
  [data-game-ui] .domino-hand-controls .btn { flex:0 0 calc((100% - 24px)/4); min-width:0; min-height:56px; padding:8px 4px; font-size:14px; }
  .assembly-view-tools { gap:6px; }
  [data-game-ui] .assembly-view-tools .btn { min-width:48px; padding:8px; font-size:14px; }
  .assembly-piece-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
  [data-game-ui] .assembly-piece-controls .btn { min-width:0; padding:8px; }
  #as-keyboard-help { display:none; }
  #gw-overlay, #lg-overlay { min-width:min(300px,100%); }
}
@media(max-height:500px) and (orientation:landscape) {
  #screen-groundwork, #screen-lengthy { position:relative; }
  [data-game='groundwork'] .game-grid { display:grid; grid-template-columns:140px minmax(0,1fr); gap:8px; padding:0 172px 8px 8px; }
  [data-game='groundwork'] .side { display:flex; flex-direction:column; gap:8px; }
  [data-game='groundwork'] .side.left { grid-column:1; grid-row:1; }
  [data-game='groundwork'] .side.right { grid-column:1; grid-row:2; }
  [data-game='groundwork'] .side.left .stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); flex:none; }
  [data-game='groundwork'] #gw-wrap { grid-column:2; grid-row:1 / span 2; order:0; }
  [data-game='groundwork'] #gw-touch { position:absolute; right:4px; top:0; width:160px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  [data-game='groundwork'] .side .controls { display:none; }
  [data-game='lengthy'] .game-grid { padding-right:240px; }
  [data-game='lengthy'] #lg-touch { position:absolute; right:8px; top:56px; width:220px; }
  [data-game='lengthy'] #lg-overlay { padding:8px; }
  [data-game='lengthy'] #lg-overlay .actions { flex-direction:row; }
  #rd-play, #do-play { position:relative; }
  #rd-play .game-grid { padding-right:192px; }
  #rd-play .ronda-hand-controls { position:absolute; right:4px; top:52px; width:180px; grid-template-columns:minmax(0,1fr); }
  [data-game-ui] #rd-play .ronda-hand-controls .btn { flex-basis:100%; }
  #do-play .game-grid { padding-right:252px; }
  #do-play .domino-hand-controls { position:absolute; right:4px; top:44px; width:240px; grid-template-columns:repeat(3,minmax(0,1fr)); }
  [data-game-ui] #do-play .domino-hand-controls .btn { flex-basis:calc((100% - 16px)/3); }
  #do-play .domino-ends { position:absolute; right:4px; top:0; width:240px; }
  #do-play .strip { padding-right:252px; }
  #dm-play { position:relative; }
  #dm-play .game-grid { padding-right:300px; }
  #dm-play .dama-move-picker { position:absolute; top:0; right:0; width:284px; max-height:calc(100dvh - 64px); overflow:auto; }
  #dm-play .dama-move-controls { padding:8px 0; }
}
