/* Orchard-only presentation polish. No map, bottle geometry, input or timing rules. */
#game-card { position: relative; }
#game-card.solved-mode .paper-footer { position: static; }
#scene .realm-stage-img {
  object-position: center 58%; filter: saturate(1.12) brightness(.82);
  mask-image: linear-gradient(transparent, #000 9%, #000 87%, transparent);
}
#scene .realm-stage-img.loaded { opacity: .94; }
#scene .stage-halo {
  inset: 0; border-radius: 0;
  background: radial-gradient(ellipse at 50% 47%, #05263010 28%, #05263080 100%);
}
#scene .stage-shelf {
  background: radial-gradient(ellipse at 50% 30%, #e8c46c48, #234b4570 56%, transparent 73%);
  border-bottom-color: #f5dc9680;
}
#game-card.solved-mode #solved {
  position: absolute; z-index: 12; left: 0; right: 0; top: 24%; margin-inline: auto;
  box-sizing: border-box; width: min(88%, 380px); padding: 16px 18px;
  border: 2px solid #ffe6a1; border-radius: 22px;
  background: radial-gradient(ellipse at 50% 0, #fff6d2, #f7d98e 70%, #dfb56c);
  box-shadow: inset 0 0 0 3px #bd873a55, inset 0 2px 0 #fffbed, 0 12px 38px #041e38bb, 0 0 24px #ffe5a94d;
  color: #4a351a; text-align: center; animation: orchard-award-in 420ms ease-out both;
}
#game-card.solved-mode #solved h2 { color: #624114; font-size: clamp(23px, 5vw, 31px); line-height: 1.1; text-shadow: 0 1px 0 #fffbea; margin: 0 0 5px; }
#game-card.solved-mode #solved-copy { color: #5b4627; font-size: 12px; line-height: 1.4; margin: 4px 0 10px; }
#game-card.solved-mode .solved-flower { display: block; font-size: 30px; margin: 0 0 4px; color: #b17b17; text-shadow: 0 1px 0 #fffbea; }
#game-card.solved-mode .solved-actions { display: flex; flex-direction: column; align-items: stretch; gap: 4px; }
#game-card.solved-mode #next { min-height: 44px; background: linear-gradient(#43887c, #1e5b55); border-color: #9ad3b2; color: #fff9dc; box-shadow: inset 0 1px 0 #dff8bd66, 0 3px 0 #153f3b; }
#game-card.solved-mode #replay { min-height: 44px; color: #5b4627; font-size: 12px; padding: 5px; }
#game-card.solved-mode #scene:after {
  inset: 0; z-index: 11; opacity: .9; transform: none;
  background: radial-gradient(circle at 12% 20%, #ffe19a 0 3px, transparent 4px), radial-gradient(circle at 82% 16%, #a8f6cf 0 3px, transparent 4px), radial-gradient(circle at 23% 62%, #fff6cc 0 2px, transparent 3px), radial-gradient(circle at 91% 72%, #ffe19a 0 3px, transparent 4px), radial-gradient(circle at 60% 8%, #fff7d0 0 2px, transparent 3px);
  animation: orchard-award-sparkles 1200ms ease-out both;
}
@keyframes orchard-award-in { from { opacity: 0; transform: translateY(10px) scale(.96); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes orchard-award-sparkles { from { opacity: 0; transform: translateY(12px); } 35% { opacity: 1; } to { opacity: .65; transform: translateY(-12px); } }
@media (max-height: 540px) and (min-width: 600px) {
  #game-card.solved-mode #solved { left: 16px; right: auto; top: 70px; transform: none; width: calc(100svh - 112px); padding: 10px 14px; animation: none; }
  #game-card.solved-mode .solved-flower { display: none; }
  #game-card.solved-mode .solved-actions { flex-direction: row; justify-content: center; }
  #game-card.solved-mode .solved-actions button { flex: 1; }
}
@media (prefers-reduced-motion: reduce) {
  #game-card.solved-mode #solved, #game-card.solved-mode #scene:after { animation: none; }
}
body:has(#motion:checked) #game-card.solved-mode #solved,
body:has(#motion:checked) #game-card.solved-mode #scene:after { animation: none; }
