/* Rescue mode (public/rescue.js). Uses the variables from style.css. */
.rescue-head { display: flex; flex-direction: column; align-items: flex-start; }
.rescue-back { color: var(--accent); text-decoration: none; padding: 6px 0; }
.rescue input[type="search"] { width: 100%; margin: 8px 0 12px; }
.rescue-packs, .rescue-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.rescue-packs .card { margin: 0; }
.rescue-phrase { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 14px; }
.rescue-cs { margin: 0; color: var(--muted); }
.rescue-en { margin: 2px 0 10px; font-size: 1.25rem; font-weight: 600; line-height: 1.3; }
.rescue-buttons { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 8px; }
.rescue-buttons button { min-height: 44px; padding: 6px 8px; }
.rescue-offline { margin-top: 16px; }
.rescue-show {
  position: fixed; inset: 0; z-index: 50; background: var(--surface); color: var(--text);
  display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center;
  padding: calc(24px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom)); cursor: pointer;
}
.rescue-show-en { font-size: clamp(2rem, 9vw, 3.5rem); font-weight: 700; line-height: 1.15; margin: 0 0 16px; }
.rescue-show-cs { font-size: 1.2rem; color: var(--muted); margin: 0 0 24px; }
.rescue-head .page-head { margin-top: 0; }
.rescue-buttons button .icon { margin-left: -4px; }
.rescue-phrase { border-width: 2px; box-shadow: 0 3px 0 var(--color-line); border-radius: var(--radius-lg); }
.rescue-en { font-family: var(--font-heading); font-weight: 800; }
.rescue-show-en { font-family: var(--font-heading); }
