.lane-stack { grid-template-rows: minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr); gap: 6px; min-height: 0; }
.arrange-actions { justify-content:center; gap:12px; }
.arrange-actions .btn { min-width:124px; }
.arrange-scene:not(.is-fully-placed) .arrange-board .card,.arrange-scene:not(.is-fully-placed) .arrange-board .card-slot { --card-w: 40px; }
.is-fully-placed .hand-tray { min-height: 30px; padding: 4px 12px; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.is-fully-placed .hand-caption { position: static; margin: 0; gap: 15px; }
.is-fully-placed .hand-tray > .cards { min-height: 0; }
.is-fully-placed .all-placed { font-size: 9px; }
.lane-boundary { display: flex; align-items: center; justify-content: space-between; gap: 6px; padding: 0 9px; min-width: 0; color: #b7c9a9; font-size: 10px; }
.lane-boundary strong { font-weight: 600; }
.lane-swap-button { min-height: 28px; border: 1px solid #ceb979; background: #1e5645; color: #f3e4b4; border-radius: 7px; padding: 3px 15px; cursor: pointer; font-size: 11px; white-space: nowrap; }
.lane-swap-button:disabled { opacity: .45; cursor: default; }
.lane.has-order-error { border: 2px solid #ffb087; box-shadow: inset 0 0 16px #e45b3422; background: #653d2d55; }
.lane-boundary.has-order-error { color: #ffe2c5; background: #9b3e29cc; border: 1px solid #f6a075; border-radius: 5px; }
.lane-boundary.has-order-error .lane-swap-button { background: #ffe0a2; color: #65331e; font-weight: bold; }
.arrange-status.invalid { color: #ffd8b5; font-weight: bold; background: #8b382c88; border-radius: 5px; }
.card.playing-card[data-card] { touch-action: manipulation; cursor: pointer; }
.round-ready-controls { display: flex; align-items: center; gap: 13px; color: #385b49; font-size: 11px; }
.round-ready-controls > div { display: grid; gap: 4px; text-align: left; }
.round-ready-controls small { font-size: 9px; color: #727b5f; }
@media(orientation:landscape) and (max-height:600px) {
  .lane-stack { gap: 4px; }
  .lane-boundary { font-size: 9px; padding-inline: 4px; }
  .lane-swap-button { font-size: 10px; padding: 3px 10px; }
  .arrange-scene:not(.is-fully-placed) .arrange-board .card,.arrange-scene:not(.is-fully-placed) .arrange-board .card-slot { --card-w: 32px; }
  .arrange-scene.is-fully-placed .arrange-board .card { --card-w: 38px; }
  .is-fully-placed .hand-tray { min-height: 28px; padding: 3px 12px; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
  .is-fully-placed .hand-caption { position: static; margin: 0; gap: 15px; }
  .is-fully-placed .hand-tray > .cards { min-height: 0; }
  .is-fully-placed .all-placed { font-size: 8px; }
  .round-ready-controls { gap: 8px; font-size: 9px; }
  .round-ready-controls small { font-size: 8px; }
}
@media(orientation:portrait) and (max-width:800px) {
  .lane-stack { min-height: 350px; }
  .round-ready-controls { flex-wrap: wrap; justify-content: center; }
  .round-ready-controls > div { text-align: center; }
}
