/* Экраны «Молитва и Писание» и «Выбор отрывка» */
.pray-stack [hidden] { display: none !important; }
.pray-stack { padding-top: 4px; }
.pray-card { padding: 18px; border-radius: 24px; }
.pray-label { margin: 0 0 6px; color: var(--faint); font-size: 15px; letter-spacing: .04em; text-transform: uppercase; }
.pray-now-title { margin: 0 0 8px; font-family: var(--serif); font-weight: 600; font-size: 24px; line-height: 1.25; color: var(--cream); }
.pray-snippet { margin: 0 0 14px; color: var(--muted); font-size: 17px; line-height: 1.45; }
.pray-note { margin: 0; color: var(--muted); font-size: 17px; line-height: 1.45; }
.pray-h { margin: 0 0 12px; font-size: 19px; font-weight: 600; color: var(--cream); }
.pray-sec { margin: 18px 0 8px; font-size: 15px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--faint); }
.pray-group { display: flex; flex-direction: column; gap: 6px; }
.pray-next { margin-top: 12px; }
.pray-next .pray-snippet { margin-bottom: 4px; }
.pray-start, .pray-pick { width: 100%; min-height: 52px; }

.pray-opt {
  display: flex; align-items: center; gap: 12px; width: 100%; min-height: 52px;
  padding: 10px 14px; border-radius: 16px; text-align: left;
  background: transparent; border: 1px solid var(--line); color: var(--cream);
  font: inherit; font-size: 17px; touch-action: manipulation;
}
.pray-opt.is-on { border-color: var(--gold); }
.pray-opt-text { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.pray-opt-name { color: var(--cream); }
.pray-opt-sub { color: var(--muted); font-size: 15px; margin-top: 2px; }
.pray-opt-icon { display: inline-flex; width: 22px; height: 22px; color: var(--faint); flex: none; }
.pray-opt-icon svg { width: 100%; height: 100%; }
.pray-opt-icon.pray-on { color: var(--gold); }

.pray-form { display: flex; flex-direction: column; gap: 10px; margin-top: 14px; }
.pray-input {
  width: 100%; box-sizing: border-box; padding: 12px 14px; border-radius: 14px;
  background: rgba(5, 7, 13, .5); border: 1px solid var(--line); color: var(--cream);
  font: inherit; font-size: 17px; line-height: 1.4;
}
.pray-textarea { resize: vertical; min-height: 120px; }
.pray-input:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.pray-save { min-height: 52px; }

/* выбор отрывка */
.pray-head { display: flex; align-items: center; gap: 8px; }
.pray-head .screen-title { margin: 0; }
.pray-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; max-height: 48vh; max-height: 48dvh; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }
.pray-tile {
  min-height: 48px; border-radius: 14px; border: 1px solid var(--line);
  background: transparent; color: var(--cream); font: inherit; font-size: 17px; touch-action: manipulation;
}
.pray-tile.is-on { background: var(--gold); border-color: var(--gold); color: var(--ink); font-weight: 600; }
.pray-info { margin: 4px 4px 0; font-family: var(--serif); font-size: 20px; color: var(--cream); }
.pray-seg-box { display: flex; gap: 6px; padding: 4px; border-radius: 18px; border: 1px solid var(--line); background: var(--card); }
.pray-seg {
  flex: 1; min-height: 48px; border-radius: 14px; border: 0; background: transparent;
  color: var(--muted); font: inherit; font-size: 17px; touch-action: manipulation;
}
.pray-seg.is-on { background: var(--gold); color: var(--ink); font-weight: 600; }
.pray-steps { padding: 14px; border-radius: 24px; background: var(--card); border: 1px solid var(--line); }
.pray-step-row { display: flex; align-items: center; gap: 12px; }
.pray-step-label { flex: 1; font-size: 17px; color: var(--cream); }
.pray-step {
  display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px;
  border-radius: 50%; border: 1px solid var(--line); background: transparent; color: var(--gold2);
  touch-action: manipulation; -webkit-user-select: none; user-select: none;
}
.pray-step svg { width: 24px; height: 24px; }
.pray-val { min-width: 40px; text-align: center; font-size: 20px; font-variant-numeric: tabular-nums; color: var(--cream); }
.pray-prev { margin: 6px 0 14px; font-family: var(--serif); font-size: 17px; color: var(--muted); }
.pray-prev:last-child { margin-bottom: 0; }
.pray-actions { display: flex; flex-direction: column; gap: 10px; }
.pray-hint { margin: 0; text-align: center; }
.pray-dim:disabled { opacity: .4; }
.pray-opt:focus-visible, .pray-tile:focus-visible, .pray-seg:focus-visible, .pray-step:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }

@media (prefers-reduced-motion: no-preference) {
  .pray-opt, .pray-tile, .pray-seg { transition: border-color .6s ease, background-color .6s ease, color .6s ease; }
}

/* Широкие экраны */
@media (min-width: 700px) {
  .pray-grid { grid-template-columns: repeat(8, 1fr); gap: 10px; max-height: 56vh; max-height: 56dvh; }
  .pray-tile { min-height: 52px; font-size: 19px; }
  .pray-opt { min-height: 60px; padding: 12px 18px; font-size: 19px; }
  .pray-seg { min-height: 52px; font-size: 19px; }
  .pray-now-title { font-size: 27px; }
  .pray-snippet, .pray-note, .pray-step-label, .pray-prev { font-size: 19px; }
  .pray-info { font-size: 22px; }
  .pray-card { padding: 22px; }
}
@media (min-width: 900px) {
  .pray-grid { grid-template-columns: repeat(10, 1fr); }
  /* книги лежат в той же карточке, что и заголовок «Писание»: колонки только у неё, шапка во всю ширину */
  .pray-card:has(> .pray-sec) { column-count: 2; column-gap: 28px; }
  .pray-card:has(> .pray-sec) > .pray-h,
  .pray-card:has(> .pray-sec) > .pray-pick,
  .pray-card:has(> .pray-sec) > .pray-next { column-span: all; }
  .pray-card > .pray-sec { break-after: avoid; break-inside: avoid; }
  .pray-card > .pray-group { break-inside: avoid; }
}
