/* Nagrania lektorskie (zgłoszenia #19 i #17): przyciski ▶ przy hebrajskim tekście, tryb nagrywania
   administratora (dok + lista miejsc) i studio nagrań. Ciemny motyw domyślnie, jasny – [data-theme="light"]. */

:root {
  --hb-say-gold: rgb(var(--c-gold-text, var(--c-gold))); /* złoty tekst z tokenów (jasny motyw: rgb(var(--c-gold)), kontrast ≥ 4,5:1) */
  --hb-say-gold-2: rgb(var(--c-gold-light));
  --hb-say-ink: #1a1a2e;
  --hb-say-surface: #1e293b;
  --hb-say-surface-2: #0f172a;
  --hb-say-line: rgba(255, 255, 255, .1);
  --hb-say-text: #e2e8f0;
  --hb-say-muted: rgba(255, 255, 255, .65);
  --hb-say-red: #ef4444;
  --hb-say-green: #10b981;
}
[data-theme="light"] {
  --hb-say-surface: #fbf8f3;
  --hb-say-surface-2: #f5f1eb;
  --hb-say-line: rgba(44, 36, 22, .14);
  --hb-say-text: #2c2416;
  --hb-say-muted: rgba(44, 36, 22, .76);
}

/* ─── Przyciski przy tekście ─── */

.hb-say {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  margin-inline: .4rem;
  vertical-align: middle;
  font: 600 .8rem/1 system-ui, -apple-system, 'Segoe UI', sans-serif;
  letter-spacing: 0;
  text-transform: none;
  direction: ltr;
  white-space: nowrap;
}
.hb-say button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  min-width: 2rem;
  height: 2rem;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgb(var(--c-gold) / .45);
  background: rgb(var(--c-gold) / .12);
  color: var(--hb-say-gold);
  cursor: pointer;
  transition: background var(--hover-dur, 400ms) var(--hover-ease, ease-in-out), transform .1s, box-shadow var(--hover-dur, 400ms) var(--hover-ease, ease-in-out), border-color .15s;
  font: inherit;
}
.hb-say button:hover { background: rgb(var(--c-gold) / .24); box-shadow: 0 0 0 3px rgb(var(--c-gold) / .15); }
.hb-say button:active { transform: scale(.94); }
.hb-say button:focus-visible { outline: 2px solid var(--hb-say-gold); outline-offset: 2px; }
.hb-say svg { width: 1.05rem; height: 1.05rem; flex-shrink: 0; }

.hb-say-play.is-loading { animation: hb-say-pulse 1s ease-in-out infinite; }
.hb-say-play.is-playing {
  background: var(--hb-say-gold);
  color: var(--hb-say-ink);
  box-shadow: 0 0 0 0 rgb(var(--c-gold) / .5);
  animation: hb-say-ring 1.4s ease-out infinite;
}
[data-theme="light"] .hb-say-play.is-playing { color: #fff; }
.hb-say-error { animation: hb-say-shake .35s; }

/* Mikrofon administratora: kropka = stan slotu */
.hb-say-rec { position: relative; border-style: dashed !important; }
.hb-say-rec::after {
  content: '';
  position: absolute;
  top: -2px;
  right: -2px;
  width: .55rem;
  height: .55rem;
  border-radius: 50%;
  border: 2px solid var(--hb-say-surface-2);
}
.hb-say-rec.is-missing { color: var(--hb-say-red); border-color: rgba(239, 68, 68, .55) !important; background: rgba(239, 68, 68, .1) !important; }
.hb-say-rec.is-missing::after { background: var(--hb-say-red); }
.hb-say-rec.is-recorded::after { background: var(--hb-say-green); }

/* Wariant z napisem (np. karta litery: „Posłuchaj wymowy i przykładów”) */
.hb-say--pill button { padding: 0 .9rem 0 .7rem; height: 2.35rem; font-size: .85rem; border-radius: var(--btn-radius, 4px); }
.hb-say--pill .hb-say-text { white-space: normal; text-align: left; line-height: 1.15; }

/* Podświetlenie miejsca, które właśnie nagrywamy */
.hb-say-target { animation: hb-say-target 1.6s ease-out; border-radius: .35rem; }

@keyframes hb-say-pulse { 50% { opacity: .45; } }
@keyframes hb-say-ring { 0% { box-shadow: 0 0 0 0 rgb(var(--c-gold) / .55); } 100% { box-shadow: 0 0 0 10px rgb(var(--c-gold) / 0); } }
@keyframes hb-say-shake { 25% { transform: translateX(-3px); } 75% { transform: translateX(3px); } }
@keyframes hb-say-target { 0%, 40% { box-shadow: 0 0 0 4px rgb(var(--c-gold) / .55); background: rgb(var(--c-gold) / .12); } 100% { box-shadow: 0 0 0 4px rgb(var(--c-gold) / 0); } }

/* Miejsca na przyciski w komponentach */
.at-say-slot:empty { display: none; }
.at-say-slot { margin: .25rem 0 1rem; }
.at-say-slot .hb-say { margin-inline: 0; }
.hr-verse-say:empty { display: none; }
.hr-verse-say .hb-say button { width: 1.75rem; min-width: 1.75rem; height: 1.75rem; }

@media (prefers-reduced-motion: reduce) {
  .hb-say-play.is-playing, .hb-say-play.is-loading, .hb-say-target { animation: none; }
}

/* ─── Dok trybu nagrywania (admin) ─── */

.hb-rec-dock {
  position: fixed;
  left: 1rem;
  bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
  z-index: 9990;
  display: flex;
  gap: .35rem;
  font: 600 .85rem/1 system-ui, -apple-system, 'Segoe UI', sans-serif;
}
.hb-rec-dock button {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  height: 2.6rem;
  padding: 0 1rem;
  border-radius: var(--btn-radius, 4px);
  border: 1px solid var(--hb-say-line);
  background: var(--hb-say-surface);
  color: var(--hb-say-text);
  box-shadow: var(--shadow-overlay);
  cursor: pointer;
}
.hb-rec-dock button:hover { /* hover przycisku: tylko scale(1.03) z header.php (design.md) */ }
.hb-rec-dock-icon svg { width: 1.1rem; height: 1.1rem; display: block; }
.hb-rec-dock.is-on .hb-rec-dock-toggle { background: var(--hb-say-red); border-color: var(--hb-say-red); color: #fff; }
.hb-rec-dock-count { font-variant-numeric: tabular-nums; opacity: .85; }
.hb-rec-dock-count:empty { display: none; }

/* ─── Lista miejsc na stronie ─── */

.hb-rec-panel {
  position: fixed;
  left: 1rem;
  bottom: calc(4.2rem + env(safe-area-inset-bottom, 0px));
  z-index: 9991;
  width: min(24rem, calc(100vw - 2rem));
  max-height: min(70vh, 40rem);
  display: flex;
  flex-direction: column;
  background: var(--hb-say-surface);
  color: var(--hb-say-text);
  border: 1px solid var(--hb-say-line);
  border-radius: 1rem;
  box-shadow: var(--shadow-overlay);
  font: .85rem/1.35 system-ui, -apple-system, 'Segoe UI', sans-serif;
  overflow: hidden;
}
.hb-rec-panel-head { display: flex; justify-content: space-between; align-items: flex-start; gap: .5rem; padding: .9rem 1rem .5rem; }
.hb-rec-panel-head strong { display: block; font-size: .95rem; }
.hb-rec-panel-head span { color: var(--hb-say-muted); font-size: .8rem; }
.hb-rec-panel-close { background: none; border: 0; color: var(--hb-say-muted); font-size: 1rem; cursor: pointer; padding: .25rem; }
.hb-rec-progress { height: 4px; margin: 0 1rem; border-radius: 4px; background: var(--hb-say-line); overflow: hidden; }
.hb-rec-progress span { display: block; height: 100%; background: linear-gradient(90deg, var(--hb-say-green), var(--hb-say-gold)); transition: width .3s; }
.hb-rec-panel-actions { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .75rem 1rem; flex-wrap: wrap; }
.hb-rec-go {
  display: inline-flex; align-items: center; gap: .4rem;
  padding: .5rem .85rem; border-radius: var(--btn-radius, 4px); border: 0; cursor: pointer; font-weight: 700;
  background: linear-gradient(135deg, var(--hb-say-gold), var(--hb-say-gold-2)); color: var(--hb-say-ink);
}
[data-theme="light"] .hb-rec-go { color: #fff; }
.hb-rec-go svg { width: 1rem; height: 1rem; }
.hb-rec-go:disabled { opacity: .45; cursor: default; }
.hb-rec-filter { display: inline-flex; align-items: center; gap: .35rem; color: var(--hb-say-muted); cursor: pointer; }
.hb-rec-list { list-style: none; margin: 0; padding: 0 .5rem .5rem; overflow-y: auto; flex: 1; }
.hb-rec-row { display: flex; align-items: center; gap: .25rem; border-radius: .6rem; }
.hb-rec-row:hover { background: rgb(var(--c-gold) / .08); }
.hb-rec-row-main {
  flex: 1; min-width: 0; display: grid; grid-template-columns: .6rem 1fr; column-gap: .6rem; row-gap: .1rem;
  align-items: center; text-align: left; padding: .5rem .5rem; background: none; border: 0; color: inherit; cursor: pointer;
}
.hb-rec-row-dot { width: .6rem; height: .6rem; border-radius: 50%; background: var(--hb-say-red); grid-row: span 2; }
.hb-rec-row.is-done .hb-rec-row-dot { background: var(--hb-say-green); }
.hb-rec-row-text { font-family: 'Noto Sans Hebrew', 'SBL Hebrew', serif; font-size: 1.15rem; line-height: 1.3; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: right; }
.hb-rec-row-meta { grid-column: 2; color: var(--hb-say-muted); font-size: .75rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hb-rec-row-play { flex-shrink: 0; width: 2rem; height: 2rem; border-radius: 50%; border: 1px solid var(--hb-say-line); background: none; color: var(--hb-say-gold); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; margin-right: .25rem; }
.hb-rec-row-play svg { width: 1rem; height: 1rem; }
.hb-rec-empty { padding: 1rem; text-align: center; color: var(--hb-say-muted); }
.hb-rec-panel-note { margin: 0; padding: .6rem 1rem .8rem; border-top: 1px solid var(--hb-say-line); color: var(--hb-say-muted); font-size: .75rem; }

/* ─── Studio nagrań ─── */

html.hb-studio-open { overflow: hidden; }
.hb-studio {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: rgba(2, 6, 23, .72);
  backdrop-filter: blur(3px);
  font: .9rem/1.45 system-ui, -apple-system, 'Segoe UI', sans-serif;
}
[data-theme="light"] .hb-studio { background: rgba(44, 36, 22, .45); }
.hb-studio[hidden] { display: none !important; }
.hb-studio-box {
  width: min(48rem, 100%);
  max-height: calc(100vh - 2rem);
  max-height: calc(100dvh - 2rem);
  overflow-y: auto;
  background: var(--hb-say-surface);
  color: var(--hb-say-text);
  border: 1px solid var(--hb-say-line);
  border-radius: 1.25rem;
  box-shadow: var(--shadow-overlay);
  padding: 1.25rem 1.5rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.hb-studio-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
.hb-studio-kicker { display: block; font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--hb-say-gold); }
.hb-studio-title { margin: .15rem 0 0; font-size: 1.15rem; font-weight: 700; color: var(--hb-say-text); }
.hb-studio-x { background: none; border: 0; color: var(--hb-say-muted); font-size: 1.2rem; cursor: pointer; padding: .25rem .5rem; border-radius: .5rem; }
.hb-studio-x:hover { color: var(--hb-say-text); background: var(--hb-say-line); }

.hb-studio-prompt { text-align: center; padding: 1rem; border-radius: 1rem; background: var(--hb-say-surface-2); border: 1px solid var(--hb-say-line); }
.hb-studio-he { font-family: 'Noto Sans Hebrew', 'SBL Hebrew', serif; font-size: clamp(2rem, 6vw, 3.25rem); line-height: 1.35; color: var(--hb-say-gold); word-break: break-word; }
/* Dłuższy tekst (cały psalm, modlitwa): mniejsza czcionka, wersety w osobnych liniach, przewijanie */
.hb-studio-he.is-long { font-size: clamp(1.25rem, 3.2vw, 1.7rem); line-height: 1.75; white-space: pre-line; max-height: 34vh; overflow-y: auto; padding-left: .5rem; }
.hb-studio-hint { margin-top: .35rem; color: var(--hb-say-text); opacity: .85; }
.hb-studio-scope { margin-top: .35rem; font-size: .75rem; color: var(--hb-say-muted); }

.hb-studio-input { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: .5rem 1rem; align-items: center; }
.hb-studio-device-wrap { display: flex; flex-direction: column; gap: .25rem; font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--hb-say-muted); }
.hb-studio-device { width: 100%; padding: .5rem .6rem; border-radius: .5rem; border: 1px solid var(--hb-say-line); background: var(--hb-say-surface-2); color: var(--hb-say-text); font: .85rem system-ui, sans-serif; text-transform: none; letter-spacing: 0; }
.hb-studio-meter { position: relative; height: .7rem; border-radius: 999px; background: var(--hb-say-surface-2); border: 1px solid var(--hb-say-line); overflow: hidden; align-self: end; margin-bottom: .45rem; }
.hb-studio-meter-fill { position: absolute; inset: 0 auto 0 0; width: 0; background: linear-gradient(90deg, #10b981 0%, #10b981 60%, #eab308 85%, #ef4444 100%); background-size: 100vw 100%; transition: width .05s linear; }
.hb-studio-meter-fill.is-clip { background: var(--hb-say-red); }
.hb-studio-meter-peak { position: absolute; top: 0; bottom: 0; width: 2px; left: 0; background: var(--hb-say-text); opacity: .7; }
.hb-studio-meter-scale i { position: absolute; top: 0; bottom: 0; width: 1px; background: var(--hb-say-line); }
.hb-studio-level { grid-column: 2; font-size: .75rem; color: var(--hb-say-muted); min-height: 1.1em; }
.hb-studio-level[data-kind="ok"] { color: var(--hb-say-green); }
.hb-studio-level[data-kind="warn"] { color: #eab308; }
.hb-studio-level[data-kind="bad"] { color: var(--hb-say-red); font-weight: 700; }
.hb-studio-check { grid-column: 1 / -1; display: flex; gap: .5rem; align-items: flex-start; font-size: .8rem; color: var(--hb-say-muted); cursor: pointer; }
.hb-studio-check input { margin-top: .2rem; accent-color: var(--hb-say-gold); }
.hb-studio-check small { opacity: .8; }

.hb-studio-stage { position: relative; }
.hb-studio-wave { display: block; width: 100%; height: 7.5rem; border-radius: .75rem; background: var(--hb-say-surface-2); border: 1px solid var(--hb-say-line); touch-action: none; cursor: pointer; }
.hb-studio.is-recording .hb-studio-wave { border-color: rgba(239, 68, 68, .6); box-shadow: 0 0 0 3px rgba(239, 68, 68, .15); }
.hb-studio-empty { position: absolute; inset: 0 0 1.4rem; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: var(--hb-say-muted); pointer-events: none; padding: 1rem; }
.hb-studio-empty[hidden] { display: none; }
.hb-studio-empty p { margin: 0 0 .25rem; }
.hb-hint-touch { display: none; }
@media (hover: none) and (pointer: coarse) {
  .hb-hint-keys { display: none; }
  .hb-hint-touch { display: inline; }
}
.hb-studio-times { display: flex; justify-content: space-between; font-size: .72rem; color: var(--hb-say-muted); margin-top: .3rem; font-variant-numeric: tabular-nums; min-height: 1.1em; }

.hb-studio-controls { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.hb-studio-rec {
  display: inline-flex; align-items: center; gap: .6rem;
  height: 3.2rem; padding: 0 1.4rem 0 1.1rem;
  border-radius: var(--btn-radius, 4px); border: 2px solid rgba(239, 68, 68, .6);
  background: rgba(239, 68, 68, .12); color: var(--hb-say-text);
  font: 700 1rem system-ui, sans-serif; cursor: pointer; transition: background var(--hover-dur, 400ms) var(--hover-ease, ease-in-out), transform .1s;
}
.hb-studio-rec:hover { /* hover przycisku: tylko scale(1.03) z header.php (design.md) */ }
.hb-studio-rec:active { transform: scale(.97); }
.hb-studio-rec:disabled { opacity: .5; cursor: default; }
.hb-studio-rec-dot { width: 1.1rem; height: 1.1rem; border-radius: 50%; background: var(--hb-say-red); transition: border-radius .15s; }
.hb-studio.is-recording .hb-studio-rec { background: var(--hb-say-red); color: #fff; border-color: var(--hb-say-red); }
.hb-studio.is-recording .hb-studio-rec-dot { border-radius: .2rem; background: #fff; animation: hb-say-pulse 1s ease-in-out infinite; }
.hb-studio-timer { font: 700 1.1rem ui-monospace, SFMono-Regular, Menlo, monospace; font-variant-numeric: tabular-nums; color: var(--hb-say-muted); min-width: 4.5rem; }
.hb-studio.is-recording .hb-studio-timer { color: var(--hb-say-red); }

.hb-studio-btn {
  display: inline-flex; align-items: center; gap: .35rem;
  padding: .5rem .9rem; border-radius: var(--btn-radius, 4px);
  border: 1px solid var(--hb-say-line); background: transparent; color: var(--hb-say-text);
  font: 600 .85rem system-ui, sans-serif; cursor: pointer; transition: border-color var(--hover-dur, 400ms) var(--hover-ease, ease-in-out), background var(--hover-dur, 400ms) var(--hover-ease, ease-in-out);
}
.hb-studio-btn:hover:not(:disabled) { /* hover przycisku: tylko scale(1.03) z header.php (design.md) */ }
.hb-studio-btn:disabled { opacity: .4; cursor: default; }
.hb-studio-btn.is-playing { border-color: var(--hb-say-gold); color: var(--hb-say-gold); }
.hb-studio-btn--gold { background: linear-gradient(135deg, var(--hb-say-gold), var(--hb-say-gold-2)); color: var(--hb-say-ink); border-color: transparent; }
[data-theme="light"] .hb-studio-btn--gold { color: #fff; }
.hb-studio-btn--gold:hover:not(:disabled) { /* hover przycisku: tylko scale(1.03) z header.php (design.md) */ }
.hb-studio-btn--danger { color: var(--hb-say-red); border-color: rgba(239, 68, 68, .35); }
.hb-studio-btn--danger.is-confirm { background: var(--hb-say-red); color: #fff; }

.hb-studio-takes { display: flex; flex-wrap: wrap; gap: .4rem; }
.hb-studio-takes:empty { display: none; }
.hb-take { display: inline-flex; align-items: stretch; border: 1px solid var(--hb-say-line); border-radius: .6rem; overflow: hidden; }
.hb-take.is-selected { border-color: var(--hb-say-gold); box-shadow: 0 0 0 2px rgb(var(--c-gold) / .2); }
.hb-take button { background: none; border: 0; color: var(--hb-say-text); font: 600 .8rem system-ui, sans-serif; cursor: pointer; padding: .4rem .6rem; }
.hb-take.is-selected .hb-take-pick { color: var(--hb-say-gold); }
.hb-take-del { color: var(--hb-say-muted) !important; border-left: 1px solid var(--hb-say-line) !important; }
.hb-take-del:hover { color: var(--hb-say-red) !important; }
.hb-take-warn { color: #eab308; margin-right: .25rem; }

.hb-studio-current { border-top: 1px solid var(--hb-say-line); padding-top: .75rem; display: flex; flex-direction: column; gap: .5rem; }
.hb-studio-current:empty { display: none; }
.hb-cur { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.hb-cur--none { color: var(--hb-say-muted); font-size: .85rem; }
.hb-cur-label { font-weight: 700; font-size: .8rem; }
.hb-cur-meta { color: var(--hb-say-muted); font-size: .78rem; }
.hb-cur .hb-cur-remove { margin-left: auto; }
.hb-hist summary { cursor: pointer; color: var(--hb-say-muted); font-size: .82rem; }
.hb-hist ol { list-style: none; margin: .5rem 0 0; padding: 0; display: flex; flex-direction: column; gap: .35rem; }
.hb-hist li { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.hb-hist .hb-hist-restore { margin-left: auto; }

.hb-studio-foot { border-top: 1px solid var(--hb-say-line); padding-top: .75rem; display: grid; grid-template-columns: 1fr auto; gap: .5rem 1rem; align-items: center; }
.hb-studio-status { grid-column: 1 / -1; min-height: 1.3em; font-size: .85rem; color: var(--hb-say-muted); }
.hb-studio-status.is-ok { color: var(--hb-say-green); }
.hb-studio-status.is-warn { color: #eab308; }
.hb-studio-status.is-error { color: var(--hb-say-red); font-weight: 600; }
.hb-studio-status.is-rec { color: var(--hb-say-red); }
.hb-studio-status.is-busy { color: var(--hb-say-gold); }
.hb-studio-keys { font-size: .72rem; color: var(--hb-say-muted); }
.hb-studio-keys kbd, .hb-studio-empty kbd {
  display: inline-block; padding: .05rem .35rem; border-radius: .3rem; border: 1px solid var(--hb-say-line);
  background: var(--hb-say-surface-2); font: 600 .72rem ui-monospace, monospace; color: var(--hb-say-text);
}
.hb-studio-actions { display: flex; gap: .5rem; flex-wrap: wrap; justify-content: flex-end; }
.hb-studio-actions [hidden] { display: none; }

@media (max-width: 640px) {
  .hb-studio { padding: 0; align-items: stretch; }
  .hb-studio-box { border-radius: 0; max-height: none; height: 100%; padding: 1rem; }
  .hb-studio-input { grid-template-columns: 1fr; }
  .hb-studio-level { grid-column: 1; }
  .hb-studio-foot { grid-template-columns: 1fr; }
  .hb-studio-keys { display: none; }
  .hb-studio-actions { justify-content: stretch; }
  .hb-studio-actions .hb-studio-btn { flex: 1; justify-content: center; }
  .hb-rec-dock-label { display: none; }
}

/* ─── Kreator lekcji: zakładka „Nagrania” ─── */

.ame-audio-table { width: 100%; border-collapse: collapse; font-size: .85rem; }
.ame-audio-table th { text-align: left; font-size: .7rem; letter-spacing: .06em; text-transform: uppercase; color: var(--hb-say-muted); padding: .5rem; border-bottom: 1px solid var(--hb-say-line); }
.ame-audio-table td { padding: .55rem .5rem; border-bottom: 1px solid var(--hb-say-line); vertical-align: middle; color: var(--hb-say-text); }
.ame-audio-table .he { font-family: 'Noto Sans Hebrew', serif; font-size: 1.2rem; direction: rtl; text-align: right; color: var(--hb-say-gold); }
.ame-audio-stats { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; }
.ame-audio-stat { padding: .75rem 1rem; border-radius: .75rem; border: 1px solid var(--hb-say-line); min-width: 9rem; }
.ame-audio-stat strong { display: block; font-size: 1.3rem; color: var(--hb-say-gold); }
.ame-audio-stat span { font-size: .75rem; color: var(--hb-say-muted); }
.ame-word-say { display: inline-flex; gap: .35rem; margin-left: auto; margin-right: 2.5rem; }

/* ─── „Nie nagrywamy” (audio_skips) ─── */

.hb-say-rec.is-skipped { color: var(--hb-say-muted); border-color: var(--hb-say-line) !important; background: transparent !important; }
.hb-say-rec.is-skipped::after { background: var(--hb-say-muted); }
.hb-rec-row.is-skipped { opacity: .55; }
.hb-rec-row.is-skipped .hb-rec-row-dot { background: var(--hb-say-muted); }
.hb-rec-panel-note a { color: var(--hb-say-gold); font-weight: 600; white-space: nowrap; }

/* Studio: postęp nagrywania po kolei i przyciski „dalej” */
.hb-studio-progress { margin-top: .3rem; font-size: .8rem; font-weight: 600; color: var(--hb-say-gold); }
.hb-studio-progress[hidden] { display: none; }
.hb-studio-btn--ghost { border-style: dashed; color: var(--hb-say-muted); }
/* Stopka studia: status i skróty w osobnych wierszach, pod nimi „dalej / nie nagrywamy” i zapis */
.hb-studio-foot { display: flex; flex-direction: column; align-items: stretch; }
.hb-studio-actions { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: space-between; align-items: center; }
.hb-studio-actions-aside, .hb-studio-actions-main { display: flex; flex-wrap: wrap; gap: .5rem; }
.hb-studio-actions-main { margin-left: auto; justify-content: flex-end; }
.hb-studio-actions-aside:not(:has(button:not([hidden]))) { display: none; }

/* ─── Kreator: lista nagrań lekcji ─── */

.ame-rec-view { display: flex; flex-direction: column; gap: 1rem; }
.ame-rec-top { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.ame-rec-title { flex: 1; min-width: 14rem; }
.ame-rec-title h2 { margin: .15rem 0 0; font-size: 1.35rem; font-weight: 800; color: var(--hb-say-text); }
.ame-rec-kicker, .ame-rec-lesson-kicker { display: block; font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--hb-say-gold); }
.ame-rec-intro { margin: 0; max-width: 52rem; font-size: .88rem; line-height: 1.55; color: var(--hb-say-muted); }
.ame-rec-intro strong { color: var(--hb-say-text); }
.ame-rec-loading, .ame-rec-empty { color: var(--hb-say-muted); padding: 1rem 0; }
.ame-rec-subhead { margin: 1rem 0 0; font-size: 1rem; font-weight: 700; color: var(--hb-say-text); }

.ame-rec-lessons { display: grid; grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); gap: .75rem; }
.ame-rec-lesson {
  display: flex; flex-direction: column; gap: .4rem; text-align: left; cursor: pointer;
  padding: 1rem 1.1rem; border-radius: .9rem; border: 1px solid var(--hb-say-line);
  background: var(--hb-say-surface-2); color: var(--hb-say-text); font: inherit; transition: border-color var(--hover-dur, 400ms) var(--hover-ease, ease-in-out), box-shadow var(--hover-dur, 400ms) var(--hover-ease, ease-in-out);
}
.ame-rec-lesson:hover { border-color: var(--hb-say-gold); box-shadow: 0 0 18px rgb(var(--c-gold) / .12); }
.ame-rec-lesson strong { font-size: .95rem; line-height: 1.3; }
.ame-rec-lesson.is-draft { opacity: .75; }
.ame-rec-lesson.is-complete .ame-rec-bar span { background: var(--hb-say-green); }
.ame-rec-lesson-nums { font-size: .78rem; color: var(--hb-say-muted); }
.ame-rec-lesson-nums b { color: var(--hb-say-text); }

.ame-rec-bar { display: block; height: 6px; border-radius: 6px; background: var(--hb-say-line); overflow: hidden; }
.ame-rec-bar span { display: block; height: 100%; background: linear-gradient(90deg, var(--hb-say-green), var(--hb-say-gold)); transition: width .3s; }
.ame-rec-bar--big { height: 10px; }
.ame-rec-summary p { margin: .5rem 0 0; font-size: .9rem; color: var(--hb-say-muted); }
.ame-rec-summary b { color: var(--hb-say-text); }

.ame-rec-actions-bar { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; justify-content: space-between; }
.ame-rec-go { font-size: .95rem; padding: .7rem 1.3rem; }
.ame-rec-go:disabled { opacity: .45; cursor: default; }
.ame-rec-filters { display: inline-flex; flex-wrap: wrap; gap: .25rem; padding: .25rem; border-radius: .7rem; border: 1px solid var(--hb-say-line); }
.ame-rec-filter { border: 0; background: transparent; color: var(--hb-say-muted); font: 600 .8rem system-ui, sans-serif; padding: .4rem .7rem; border-radius: .5rem; cursor: pointer; }
.ame-rec-filter span { opacity: .75; font-variant-numeric: tabular-nums; }
.ame-rec-filter.is-active { background: rgb(var(--c-gold) / .15); color: var(--hb-say-gold); }
.ame-rec-warn { padding: .75rem 1rem; border-radius: .7rem; border: 1px solid rgba(234, 179, 8, .4); background: rgba(234, 179, 8, .08); color: #eab308; font-size: .85rem; }

.ame-rec-groups { display: flex; flex-direction: column; gap: 1rem; }
.ame-rec-group { border: 1px solid var(--hb-say-line); border-radius: .9rem; overflow: hidden; }
.ame-rec-group-head { display: flex; align-items: flex-start; justify-content: space-between; gap: .75rem; flex-wrap: wrap; padding: .8rem 1rem; background: var(--hb-say-surface-2); border-bottom: 1px solid var(--hb-say-line); }
.ame-rec-group-head h4 { margin: 0; font-size: .95rem; font-weight: 700; color: var(--hb-say-text); }
.ame-rec-group-head p { margin: .15rem 0 0; font-size: .75rem; color: var(--hb-say-muted); }
.ame-rec-group-tools { display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; }
.ame-rec-group-count { font: 700 .8rem ui-monospace, monospace; color: var(--hb-say-muted); padding: 0 .35rem; }
.ame-rec-group-tools a { text-decoration: none; }

.ame-rec-rows { list-style: none; margin: 0; padding: 0; }
.ame-rec-row { display: grid; grid-template-columns: .7rem minmax(0, 1fr) auto; align-items: center; gap: .9rem; padding: .7rem 1rem; border-bottom: 1px solid var(--hb-say-line); transition: background var(--hover-dur, 400ms) var(--hover-ease, ease-in-out); }
.ame-rec-row:last-child { border-bottom: 0; }
.ame-rec-row:hover { background: rgb(var(--c-gold) / .04); }
.ame-rec-row.is-current { background: rgb(var(--c-gold) / .1); box-shadow: inset 3px 0 0 var(--hb-say-gold); }
.ame-rec-dot { width: .7rem; height: .7rem; border-radius: 50%; background: var(--hb-say-red); }
.ame-rec-row.is-done .ame-rec-dot, .ame-rec-row.is-elsewhere .ame-rec-dot { background: var(--hb-say-green); }
.ame-rec-row.is-skipped { opacity: .6; }
.ame-rec-row.is-skipped .ame-rec-dot { background: var(--hb-say-muted); }
.ame-rec-main { min-width: 0; }
.ame-rec-label { font-size: .8rem; font-weight: 700; color: var(--hb-say-text); }
.ame-rec-he { font-family: 'Noto Sans Hebrew', 'SBL Hebrew', serif; font-size: 1.35rem; line-height: 1.45; color: var(--hb-say-gold); text-align: right; word-break: break-word; }
/* Cały tekst do odtwarzacza (zgłoszenie #50) – na liście tylko początek, w studiu całość */
.ame-rec-row.is-kind-text .ame-rec-he { font-size: 1.1rem; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ame-rec-meta { font-size: .76rem; color: var(--hb-say-muted); margin-top: .1rem; }
.ame-rec-state { font-size: .76rem; margin-top: .15rem; color: var(--hb-say-green); }
.ame-rec-row.is-skipped .ame-rec-state { color: var(--hb-say-muted); }
.ame-rec-row-actions { display: flex; gap: .35rem; flex-wrap: wrap; justify-content: flex-end; }
.ame-rec-foot { margin: 0; font-size: .75rem; line-height: 1.5; color: var(--hb-say-muted); }

@media (max-width: 720px) {
  .ame-rec-row { grid-template-columns: .7rem minmax(0, 1fr); }
  .ame-rec-row-actions { grid-column: 2; justify-content: flex-start; }
}

@media (max-width: 640px) {
  .hb-studio-actions-aside, .hb-studio-actions-main { width: 100%; margin-left: 0; }
}

/* kontrast-2026-10-04 kontrast-3 */
