:root { background: #e9efdc; --cream: #e9efdc; --ink: #284d3e; }
body { background: #e9efdc; }
.shell-main { gap: 10px; }
.shell-stage { background: #b6c786; box-shadow: 0 6px 0 #bac9a0, 0 16px 35px #24493220; }
.shell-controls { flex-direction: column; gap: 8px; min-height: 112px; width: min(520px, 100%); }
.rescue-tools, #rescue-actions { display: flex; justify-content: center; gap: 8px; width: 100%; }
.rescue-tools label { display: flex; flex: 1; align-items: center; gap: 8px; font-weight: 800; font-size: 14px; }
#rescue-level { min-width: 48px; min-height: 48px; flex: 1; padding: 8px 10px; max-width: 220px; font: inherit; color: #284d3e; background: #fffaf0; border: 2px solid #abbc97; border-radius: 14px; }
#rescue-level:focus-visible { outline: 4px solid #214f87; outline-offset: 2px; }
.rescue-tools button { width: 48px; height: 48px; padding: 0; background: #fffaf0; border-color: #abbc97; font-size: 24px; }
#rescue-actions button { min-width: 54px; min-height: 50px; padding: 8px 12px; background: #fffaf0; border-color: #7a965d; font-size: 19px; }
#rescue-actions button[data-target="pip"] { border-color: #ac6697; }
#rescue-actions button[data-target="bubble"] { border-color: #558993; }
#rescue-actions button[data-hint="true"] { border-style: dashed; outline: 3px solid #b58520; outline-offset: 1px; }
#rescue-actions button[aria-disabled="true"] { opacity: .45; cursor: default; }
.shell-hint { font-size: 13px; max-width: 500px; color: #375b46; }
.rescue-intro { margin: 8px 0 0; line-height: 1.5; font-size: 15px; }
.rescue-story { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 10px 0; font-size: 25px; }
.rescue-story img { width: 50px; height: 45px; object-fit: contain; }
.rescue-next { margin-top: 14px; background: #d9edce; border-color: #739c60; }
@media (max-width: 620px) {
  .shell-main { padding-top: 28px; gap: 9px; }
  .shell-controls { gap: 8px; min-height: 106px; }
  .rescue-tools label { font-size: 13px; gap: 6px; }
  #rescue-actions { gap: 6px; }
  #rescue-actions button { padding: 7px 9px; }
  .shell-hint { font-size: 12px; }
  .shell-card .shell-game-icon { height: 90px; }
}
