/* Zoom consults extends Rose's reading-room surfaces, type and controls. */
.recording-archive { padding:var(--sp-6); min-width:0; }
.recording-tabs { display:flex; flex-wrap:wrap; gap:var(--sp-2); padding:var(--sp-4) var(--sp-6) 0; }
.recording-tabs [aria-pressed="true"] { background:var(--accent-bg); color:var(--accent-fg); border-color:var(--accent); }
.recording-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:var(--sp-4); margin-bottom:var(--sp-6); }
.recording-heading h2 { margin:0 0 var(--sp-2); font-size:var(--fs-2xl); letter-spacing:var(--ls-tight); }
.recording-heading p { margin:0; color:var(--text-2); font-size:var(--fs-md); line-height:1.6; }
.recording-heading > button { flex-shrink:0; }
.recording-heading-actions,.recording-note-actions { display:flex; flex-wrap:wrap; align-items:center; gap:var(--sp-2); }
.recording-heading-actions [hidden] { display:none; }
.recording-note-actions { margin:var(--sp-3) 0; }
.recording-delete-prompt { padding:var(--sp-4); margin:var(--sp-4) 0; border:2px solid var(--accent); border-radius:var(--r-md); background:var(--accent-bg); }
.recording-delete-prompt h5 { margin:0 0 var(--sp-2); font-size:var(--fs-md); color:var(--accent-fg); }
.recording-delete-prompt p { margin:var(--sp-2) 0; line-height:1.5; }
.recording-overview > p { padding:var(--sp-4); margin:0; }
.recording-metric span { font-size:var(--fs-sm); line-height:1.4; }
.recording-metric:hover { background:var(--surface-2); }
.recording-metric[aria-pressed="true"] strong { color:inherit; }
[data-recording-status]:empty,[data-draft-status]:empty,.recording-export:empty { display:none; }
[data-recording-status] { margin:var(--sp-4) 0; }
.recording-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:var(--sp-3); margin:0 0 var(--sp-2); }
.recording-toolbar .input,.recording-toolbar .select { width:100%; min-height:40px; }
.recording-toolbar > button { min-height:40px; }
.recording-layout { display:grid; grid-template-columns:minmax(260px,34%) minmax(0,1fr); align-items:start; border:1px solid var(--border); border-radius:var(--r-lg); background:var(--surface); }
.recording-list { border-right:1px solid var(--border); min-width:0; align-self:stretch; }
.recording-list-heading { display:flex; align-items:center; justify-content:space-between; padding:var(--sp-4); border-bottom:1px solid var(--border); gap:var(--sp-2); }
.recording-list-heading h3 { margin:0; font-size:var(--fs-sm); font-weight:600; }
.recording-list-heading > span { color:var(--text-3); font-size:var(--fs-xs); font-variant-numeric:tabular-nums; }
.recording-list ul { padding:0; margin:0; list-style:none; max-height:700px; overflow:auto; overscroll-behavior:contain; }
.recording-row { display:grid; gap:var(--sp-2); width:100%; text-align:left; border:0; border-bottom:1px solid var(--border-faint); background:transparent; color:var(--text-2); padding:var(--sp-4); cursor:pointer; overflow-wrap:anywhere; }
.recording-row strong { color:var(--text); font-size:var(--fs-md); line-height:1.5; font-weight:600; }
.recording-row:hover { background:var(--surface-2); }
.recording-row[aria-pressed="true"] { background:var(--accent-bg); color:var(--accent-fg); }
.recording-row[aria-pressed="true"] strong { color:inherit; }
.recording-row span { font-size:var(--fs-xs); line-height:1.5; }
.recording-row-state { display:flex; flex-wrap:wrap; gap:var(--sp-2); margin-top:var(--sp-1); }
.recording-badge { display:inline-flex; align-items:center; width:fit-content; padding:2px var(--sp-2); border:1px solid var(--border); border-radius:var(--r-sm); color:var(--text-2); background:var(--surface-2); font-size:var(--fs-2xs); font-weight:500; line-height:1.6; }
.recording-badge-warn { background:var(--warn-bg); color:var(--warn-fg); border-color:transparent; }
.recording-pagination { display:flex; flex-wrap:wrap; gap:var(--sp-2); align-items:center; justify-content:space-between; padding:var(--sp-3); color:var(--text-3); font-size:var(--fs-2xs); }
.recording-detail { padding:var(--sp-6); min-width:0; }
.recording-detail h3 { overflow-wrap:anywhere; margin:0 0 var(--sp-2); font-size:var(--fs-xl); line-height:1.4; }
.recording-call-heading p { color:var(--text-2); font-size:var(--fs-xs); margin:0 0 var(--sp-2); }
.recording-actions { display:flex; flex-wrap:wrap; gap:var(--sp-2); align-items:center; margin:var(--sp-4) 0; }
.recording-detail h4 { font-size:var(--fs-md); font-weight:650; margin:0; }
.recording-detail-tabs { display:flex; gap:var(--sp-5); border-bottom:1px solid var(--border); margin-top:var(--sp-6); }
.recording-detail-tabs button { padding:var(--sp-3) 0; min-height:44px; border:0; border-bottom:2px solid transparent; background:transparent; color:var(--text-2); font:inherit; font-weight:500; cursor:pointer; }
.recording-detail-tabs button:hover { color:var(--accent-fg); }
.recording-detail-tabs [aria-selected="true"] { border-bottom-color:var(--accent); color:var(--accent-fg); }
.recording-evidence > section { padding-top:var(--sp-6); }
.recording-evidence > [hidden] { display:none; }
.recording-section-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--sp-2); margin-bottom:var(--sp-2); }
.recording-help { color:var(--text-2); font-size:var(--fs-sm); font-weight:400; line-height:1.65; max-width:72ch; margin:var(--sp-2) 0 var(--sp-4); }
.recording-highlights { list-style:none; margin:var(--sp-5) 0 var(--sp-7); padding:0; }
.recording-highlights li { display:grid; grid-template-columns:88px minmax(0,1fr); gap:var(--sp-3); margin:var(--sp-5) 0; align-items:start; }
.recording-highlights button { border:1px solid var(--border); border-radius:var(--r-sm); background:var(--surface-2); color:var(--accent-fg); min-height:44px; padding:var(--sp-2); font-size:var(--fs-xs); font-variant-numeric:tabular-nums; cursor:pointer; }
.recording-highlights button:hover { background:var(--accent-bg); border-color:var(--accent); }
.recording-highlights blockquote { margin:0; color:var(--text); font-size:var(--fs-md); line-height:1.75; overflow-wrap:anywhere; white-space:pre-wrap; }
.recording-note-preview { border-top:1px solid var(--border); padding-top:var(--sp-5); }
.recording-note-preview dl { display:grid; gap:var(--sp-4); margin:var(--sp-5) 0; }
.recording-note-preview dt { color:var(--text-2); font-size:var(--fs-xs); font-weight:600; margin-bottom:var(--sp-1); }
.recording-note-preview dd { margin:0; line-height:1.65; overflow-wrap:anywhere; }
.recording-transcript { padding:var(--sp-4); background:var(--surface-2); border-radius:var(--r-md); max-height:70vh; overflow:auto; overscroll-behavior:contain; }
.recording-transcript p { display:grid; grid-template-columns:94px minmax(0,1fr); gap:var(--sp-3); margin:0; padding:var(--sp-3) 0; line-height:1.8; white-space:pre-wrap; overflow-wrap:anywhere; }
.recording-transcript p > span:only-child { grid-column:1 / -1; }
.recording-time { font-size:var(--fs-xs); color:var(--text-3); font-variant-numeric:tabular-nums; }
.recording-transcript [data-cue]:focus { background:var(--accent-bg); color:var(--accent-fg); outline:1px solid var(--accent); outline-offset:var(--sp-1); }
.recording-evidence form label,.recording-assignment form label { display:grid; gap:var(--sp-2); margin:var(--sp-5) 0; font-weight:600; }
.recording-evidence form label .recording-help { margin:0; }
/* One Notes box: the whole answer from the practice's AI tool, or typed notes. */
.recording-notes-field { display:grid; gap:var(--sp-2); margin:var(--sp-5) 0 var(--sp-3); }
.recording-evidence .recording-notes-field label { margin:0; font-size:var(--fs-md); }
.recording-notes-field .recording-help { margin:0; }
.recording-evidence .recording-notes-field textarea { min-height:320px; }
.recording-evidence textarea { width:100%; min-height:112px; resize:vertical; line-height:1.6; }
.recording-export { margin:var(--sp-4) 0; }
.recording-export label { display:grid; gap:var(--sp-2); }
.recording-export textarea { width:100%; height:auto; min-height:180px; padding:var(--sp-3); line-height:1.6; resize:vertical; }
/* Copy prompt: staff write the note in the practice's own approved AI tool. */
.recording-prompt { margin:var(--sp-4) 0 var(--sp-2); padding:var(--sp-4); border:1px solid var(--border); border-radius:var(--r-md); background:var(--surface-2); }
.recording-prompt .recording-help { margin:0 0 var(--sp-3); }
.recording-prompt-row { display:flex; flex-wrap:wrap; align-items:center; gap:var(--sp-3); }
.recording-prompt-status { color:var(--ok-fg); font-size:var(--fs-sm); font-weight:500; line-height:1.5; overflow-wrap:anywhere; }
.recording-prompt-status.recording-error { color:var(--danger-fg); }
.recording-prompt .recording-export { margin:var(--sp-3) 0 0; }
.recording-check { display:flex; align-items:start; gap:var(--sp-2); margin:var(--sp-5) 0 var(--sp-3); line-height:1.6; }
.recording-check input { margin-top:var(--sp-1); flex-shrink:0; }
.recording-error { color:var(--danger-fg); }
.recording-assignment { margin:var(--sp-4) 0; padding:var(--sp-3); background:var(--surface-2); border:1px solid var(--border-faint); border-radius:var(--r-md); }
.recording-assignment summary { cursor:pointer; font-weight:500; min-height:24px; }
.recording-welcome-mark { display:block; color:var(--text-3); margin-bottom:var(--sp-5); }
.recording-archive button:focus-visible,.recording-archive a:focus-visible,.recording-archive summary:focus-visible,.recording-transcript:focus-visible,.recording-tabs button:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.recording-metric:focus-visible { outline-offset:-3px; }
@media(max-width:1100px) {
  .recording-archive { padding:var(--sp-4); }
  .recording-detail { padding:var(--sp-5); }
  .recording-layout { grid-template-columns:minmax(240px,35%) minmax(0,1fr); }
  .recording-highlights li { grid-template-columns:1fr; gap:var(--sp-2); }
  .recording-highlights button { width:fit-content; }
}
@media(max-width:760px) {
  .recording-heading { flex-wrap:wrap; margin-bottom:var(--sp-5); }
  .recording-layout { grid-template-columns:1fr; }
  .recording-list { border-right:0; border-bottom:1px solid var(--border); }
  .recording-detail { padding:var(--sp-4); }
  .recording-detail-tabs { gap:var(--sp-4); }
  .recording-transcript { padding:var(--sp-3); max-height:60vh; }
  .recording-transcript p { grid-template-columns:1fr; gap:var(--sp-1); }
  .recording-evidence .recording-notes-field textarea { min-height:260px; }
}
/* Calendar browsing keeps controls together and the call itself dominant. */
.recording-toolbar label:first-child { flex:3 1 260px; }
.recording-toolbar label { display:grid; gap:var(--sp-2); flex:1 1 170px; font-size:var(--fs-xs); color:var(--text-2); }
.recording-date-range { display:flex; align-items:end; flex-wrap:wrap; gap:var(--sp-3); flex-basis:100%; padding-top:var(--sp-2); }
.recording-date-range[hidden] { display:none; }
.recording-date-range label,.recording-date-range label:first-child { flex:0 1 190px; }
.recording-date-range > span { color:var(--text-2); font-size:var(--fs-xs); padding-bottom:var(--sp-3); }
.recording-filter-context { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--sp-2); min-height:40px; margin-bottom:var(--sp-4); color:var(--text-2); font-size:var(--fs-xs); line-height:1.6; }
.recording-filter-context [hidden] { display:none; }
.recording-overview { display:flex; flex-wrap:wrap; gap:var(--sp-2); }
.recording-metric { display:flex; align-items:center; color:var(--text-2); cursor:pointer; text-align:left; flex:0 1 auto; min-height:44px; padding:var(--sp-2) var(--sp-3); gap:var(--sp-3); border:1px solid var(--border); border-radius:var(--r-md); background:var(--surface); }
.recording-metric strong { font-size:var(--fs-sm); font-weight:650; font-variant-numeric:tabular-nums; color:var(--text); }
.recording-metric[aria-pressed="true"] { border-color:var(--accent); background:var(--accent-bg); color:var(--accent-fg); }
.recording-scope { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:var(--sp-2); color:var(--text-3); font-size:var(--fs-xs); line-height:1.5; margin:var(--sp-3) 0 var(--sp-5); }
.recording-list-heading { min-height:54px; }
.recording-month { display:flex; justify-content:space-between; align-items:center; gap:var(--sp-2); padding:var(--sp-5) var(--sp-4) var(--sp-3); }
.recording-month h4 { font-size:var(--fs-md); margin:0; color:var(--text); }
.recording-month > span { font-size:var(--fs-xs); color:var(--text-2); white-space:nowrap; }
.recording-day { padding:var(--sp-2) var(--sp-4); background:var(--surface-2); border-block:1px solid var(--border-faint); }
.recording-day h5 { margin:0; font-size:var(--fs-xs); font-weight:500; color:var(--text-2); line-height:1.6; }
.recording-row .recording-row-date { font-variant-numeric:tabular-nums; font-size:var(--fs-xs); color:var(--text-2); }
.recording-row[aria-pressed="true"] .recording-row-date { color:var(--accent-fg); }
.recording-back { display:none; margin-bottom:var(--sp-4); }
.recording-welcome { max-width:440px; margin:var(--sp-8) auto; padding:var(--sp-4); }
.recording-welcome > p { color:var(--text-2); line-height:1.7; margin:var(--sp-3) 0 0; }
@media(max-width:760px) {
  .recording-toolbar label:first-child { flex-basis:100%; }
  .recording-toolbar > label { flex:1 1 130px; }
  .recording-toolbar > button { flex:1 1 100%; }
  .recording-date-range label,.recording-date-range label:first-child { flex:1 1 120px; min-width:0; }
  .recording-date-range > span { flex-basis:100%; padding:0; }
  .recording-metric { flex:1 1 43%; justify-content:space-between; }
  .recording-back { display:inline-flex; }
  .recording-list ul { max-height:360px; }
  .recording-welcome { margin:var(--sp-5) auto; }
}
.recording-contact-link { border:0; padding:0; margin:var(--sp-4) 0; min-width:0; }
.recording-contact-link legend { font-weight:600; margin-bottom:var(--sp-2); }
.recording-contact-results { display:flex; flex-wrap:wrap; gap:var(--sp-2); margin-top:var(--sp-2); }
