/* Veritura Practice (practice-v1, 2026-10-26): THE CLIENT'S CONSULTANT TAB (#/consultant, next-practice-client.js). Owned by B4.
   Built to the canvas's ClientTab and Invites section 1, on the measured standard (app-ux/r3/STANDARD.md): the inks and lines of
   next-v7.css (--v6-ink .. --v6-ink-4, --v6-line, --v6-line-2, --v7-line-3), panels at radius 12 with one hairline, 32px pills,
   the ramp 12/13/14/15/19/28 only, no box inside a box. Every rule is scoped to .pc-page (the tab) or .pc-dlg (its dialogs), so
   no other page changes. The dark theme comes from the same tokens. */

:root { --pc-on: rgba(82, 102, 235, .05); }
:root[data-theme="dark"] { --pc-on: rgba(111, 128, 245, .12); }

/* ---------- the header: the firm's circle, its name and the badge, the lead and the scope, how it is paid ---------- */
#view .page.pc-page > .v89-head.pc-head { display: flex !important; flex-direction: row !important; align-items: flex-start; gap: 16px; flex-wrap: wrap; margin: 0 0 24px; }
#view .pc-head .pc-firm { width: 48px; height: 48px; border-radius: 50%; flex: none; display: inline-grid; place-items: center; background: var(--v6-ink); color: var(--v6-page, #fff); font-size: 15px; line-height: 24px; font-weight: 480; letter-spacing: .2px; }
#view .pc-head .pc-head-t { flex: 1 1 280px; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
#view .pc-head .pc-titlerow { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
#view .pc-head .pc-titlerow h1 { margin: 0; }
#view .pc-head .pc-badge { display: inline-flex; align-items: center; height: 20px; padding: 0 8px; border: 1px solid var(--v7-line-3); border-radius: 4px; font-size: 12px; line-height: 20px; letter-spacing: .2px; color: var(--v6-ink-2); white-space: nowrap; }
#view .page > .v89-head.pc-head p.pc-line { margin: 0 !important; }
#view .page > .v89-head.pc-head p.pc-pay { margin: 0 !important; font-size: 13px !important; line-height: 20px !important; letter-spacing: .1px; color: var(--v6-ink-4) !important; }
#view .pc-head .v89-head-a { flex: none; }

/* ---------- panels: Waiting on you, This month, Due in the next 60 days, the watch ---------- */
#view .pc-page .pc-grid { margin-bottom: 40px !important; }
#view .pc-page .v6-panel.v7-p .v6-ph { margin-bottom: 12px !important; }
#view .pc-item { display: flex; align-items: flex-start; gap: 12px; padding: 12px 0; border-top: 1px solid var(--v6-line); }
#view .pc-item > .btn { flex: none; }
#view .pc-what { flex: 1; min-width: 0; display: flex; flex-direction: column; }
#view .pc-what b { font-size: 15px; line-height: 24px; font-weight: 400; color: var(--v6-ink); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
#view .pc-what span { font-size: 13px; line-height: 20px; letter-spacing: .1px; color: var(--v6-ink-4); }
#view .pc-what span[data-tone="critical"] { color: var(--v6-red); }
#view .pc-meta { flex: none; font-size: 13px; line-height: 20px; color: var(--v6-ink-4); padding-top: 2px; }
#view .pc-empty { margin: 0; font-size: 15px; line-height: 24px; color: var(--v6-ink-3); }
#view .pc-empty-sec { padding: 12px 0; border-top: 1px solid var(--v6-line); }
#view .pc-sentence { margin: 0; font-size: 19px; line-height: 28px; font-weight: 400; color: var(--v6-ink); }
#view .pc-month .v7-cols { border-bottom: 0; padding-bottom: 0; }
#view .pc-page .pc-month > .v7-rule { margin: 16px 0 !important; }
#view .pc-page .v6-panel .v6-pf { margin-top: auto; }
#view .pc-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px 16px; flex-wrap: wrap; }
#view .pc-next { font-size: 15px; line-height: 24px; color: var(--v6-ink-3); }
#view .pc-out { display: inline-flex; align-items: center; gap: 4px; font-size: 15px; line-height: 24px; color: var(--v6-link) !important; text-decoration: none; background: none; border: 0; padding: 0; cursor: pointer; font-family: inherit; }
#view .pc-out svg.i { width: 14px; height: 14px; }
#view .pc-date { flex: none; font-size: 13px; line-height: 20px; color: var(--v6-ink-3); white-space: nowrap; padding-top: 2px; }
#view .pc-date[data-tone="critical"] { color: var(--v6-red); }
#view .pc-date[data-tone="attention"] { color: var(--v6-amber); }
#view .pc-watch { margin: 0; font-size: 15px; line-height: 24px; color: var(--v6-ink-2); }
#view .pc-watching .pc-next { margin: 8px 0 0; font-size: 13px; line-height: 20px; color: var(--v6-ink-4); }

/* ---------- Where things stand: a band of figures per response file, then the corrective actions ---------- */
#view .pc-band { display: flex; flex-wrap: wrap; gap: 16px 48px; padding: 12px 16px; border-top: 1px solid var(--v6-line); border-bottom: 1px solid var(--v6-line); margin: 0 0 12px; }
#view .pc-band > div > a, #view .pc-band span, #view .pc-band b { display: block; }
#view .pc-band a { color: inherit; text-decoration: none; }
#view .pc-band a:hover b { color: var(--v6-link); }
#view .pc-band span { font-size: 14px; line-height: 20px; color: var(--v6-ink-3); }
#view .pc-band b { font-size: 19px; line-height: 28px; font-weight: 400; letter-spacing: -.57px; color: var(--v6-ink); }
#view .pc-table { width: 100%; border-collapse: collapse; }
#view .pc-table td small { display: block; }
#view .pc-capas td[data-l="For"] { white-space: nowrap; }
#view .pc-table td.pc-quiet, #view .pc-table .pc-quiet { color: var(--v6-ink-4) !important; }
#view .pc-table .pc-prog[data-p="to-be-initiated"] .v5-st { color: var(--v6-ink-4); }
#view .pc-table .pc-prog .v5-st { font-weight: 400; }
#view .pc-table .pc-act { text-align: right; white-space: nowrap; }
#view .pc-table a { color: var(--v6-link); }
#view .pc-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
#view .pc-note { margin: 0 0 40px; font-size: 13px; line-height: 20px; letter-spacing: .1px; color: var(--v6-ink-4); }
#view .v7-sec .pc-note { margin: 12px 0 0; }

/* ---------- the finish round (F5): asks, who pays, the handover, binder pages, monitoring reviewed, the first read ---------- */
/* an ask's sentence is the server's subject in full, so its two buttons go under it rather than beside it */
#view .pc-item.pc-ask, #dialog .pc-dlg .pc-allrows .pc-item.pc-ask { flex-wrap: wrap; row-gap: 8px; }
#view .pc-item.pc-ask > .pc-what, #dialog .pc-dlg .pc-allrows .pc-item.pc-ask > .pc-what { flex: 1 1 100%; }
#view .pc-item.pc-ask > .pc-what b { -webkit-line-clamp: 3; }
#view .pc-item > .pc-ask-acts { flex: none; flex-wrap: nowrap; }
#view .pc-pages .v7-sec-h > .btn, #view .pc-pages .v7-sec-h > .pc-meta { margin-left: auto; }
#view .pc-closed { margin: 0; padding: 12px 0; border-top: 1px solid var(--v6-line); font-size: 13px; line-height: 20px; letter-spacing: .1px; color: var(--v6-ink-4); }
#view .pc-closed a, #dialog .pc-dlg .pc-closed a { color: var(--v6-link); }
#view .page > .v89-head.pc-head p.pc-billing { color: var(--v6-ink-3) !important; }
#view .pc-notice { display: flex; align-items: center; gap: 12px; margin: 0 0 24px; padding: 12px 0; border-top: 1px solid var(--v6-line); border-bottom: 1px solid var(--v6-line); }
#view .pc-notice > .v7-circ { flex: none; }
#view .pc-notice p { flex: 1 1 auto; min-width: 0; margin: 0; font-size: 15px; line-height: 24px; color: var(--v6-ink); }
#view .pc-notice .pc-out { flex: none; }
#view .pc-pages .pc-band, #view .pc-monitor .v6-table, #view .pc-firstread .v6-table { margin-bottom: 0; }
#view .pc-meter b[data-tone="critical"] { color: var(--v6-red); }
#view .pc-said { margin: 12px 0 0; font-size: 13px; line-height: 20px; letter-spacing: .1px; color: var(--v6-ink-3); }
#view .pc-said[data-tone="critical"] { color: var(--v6-red); }
#view .pc-how { margin: 12px 0 0; font-size: 13px; line-height: 20px; color: var(--v6-ink-4); }
#view .pc-how summary { cursor: pointer; color: var(--v6-link); list-style: none; display: inline-flex; }
#view .pc-how summary::-webkit-details-marker { display: none; }
#view .pc-how p { margin: 8px 0 0; max-width: 720px; }
#view .pc-firstread .pc-note, #view .pc-monitor .pc-note { margin: 12px 0 0; }
#view .pc-firstread > .pc-note:first-of-type { margin: 0 0 12px; }
#view .pc-fr td a { display: inline; }
#view .pc-fr td a svg.i { width: 14px; height: 14px; margin-left: 4px; vertical-align: -2px; }
#view .pc-fr td[data-l="Answer"] { white-space: nowrap; }
#view .pc-mon td[data-l="Reviewed by"] { white-space: nowrap; }
#dialog .pc-dlg .pc-body { margin: 0; font-size: 15px; line-height: 24px; color: var(--v6-ink-2); }
#dialog .pc-dlg .pc-closed { margin: 0; padding: 12px 0 0; border-top: 1px solid var(--v6-line); font-size: 13px; line-height: 20px; color: var(--v6-ink-4); }
#dialog .pc-dlg .pc-allrows .pc-date { flex: none; font-size: 13px; line-height: 20px; color: var(--v6-ink-3); white-space: nowrap; padding-top: 2px; }
#dialog .pc-dlg .pc-allrows .pc-date[data-tone="attention"] { color: var(--v6-amber); }
#dialog .pc-dlg .pc-allrows .pc-ask-acts { flex: none; display: flex; gap: 8px; }
#dialog .pc-dlg footer a.btn { text-decoration: none; }

/* ---------- no grant yet: invite your consultant ---------- */
#view .page.pc-empty-page > .v89-head { margin-bottom: 24px !important; }
#view .pc-asks { margin: 0 0 40px; }
#view .pc-asks .pc-kv { margin: 0 0 8px; padding: 0; list-style: none; }
#view .pc-form { display: flex; flex-direction: column; gap: 16px; }
#view .pc-page .pc-fld, #dialog .pc-dlg .pc-fld { display: flex; flex-direction: column; gap: 6px; margin: 0; }
#view .pc-page .pc-fld > span, #dialog .pc-dlg .pc-fld > span { font-size: 13px; line-height: 20px; letter-spacing: .1px; color: var(--v6-ink-2); }
#view .pc-page .pc-fld :is(input[type="text"], input[type="date"], input[type="file"], textarea), #dialog .pc-dlg .pc-fld :is(input[type="text"], input[type="date"], input[type="file"], textarea) { width: 100%; box-sizing: border-box; min-height: 36px; padding: 6px 12px; border: 1px solid var(--v6-line-2); border-radius: 8px; background: var(--v7-field); color: var(--v6-ink); font: inherit; font-size: 15px; line-height: 24px; }
#view .pc-page .pc-fld textarea, #dialog .pc-dlg .pc-fld textarea { min-height: 84px; resize: vertical; }
#view .pc-page .pc-fld input:focus, #view .pc-page .pc-fld textarea:focus, #dialog .pc-dlg .pc-fld :is(input, textarea):focus { outline: 2px solid var(--v6-blue); outline-offset: 1px; }
#view .pc-page .pc-opt, #dialog .pc-dlg .pc-opt { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid var(--v6-line-2); border-radius: 8px; cursor: pointer; }
#view .pc-page .pc-opt.on, #dialog .pc-dlg .pc-opt.on { border-color: var(--v6-blue); background: var(--pc-on); }
#view .pc-page .pc-opt input, #dialog .pc-dlg .pc-opt input { margin: 5px 0 0; accent-color: var(--v6-blue); flex: none; }
#view .pc-page .pc-opt b, #dialog .pc-dlg .pc-opt b { display: block; font-size: 15px; line-height: 24px; font-weight: 400; color: var(--v6-ink); }
#view .pc-page .pc-opt small, #dialog .pc-dlg .pc-opt small { display: block; font-size: 13px; line-height: 20px; color: var(--v6-ink-4); }
#view .pc-page .pc-see, #dialog .pc-dlg .pc-see { margin: 0; padding-left: 18px; font-size: 13px; line-height: 20px; color: var(--v6-ink-3); }
#view .pc-page .pc-see .pc-never, #dialog .pc-dlg .pc-see .pc-never { color: var(--v6-ink-4); }
#view .pc-page :is(.pc-pay, .pc-meaning, .pc-fine), #dialog .pc-dlg :is(.pc-pay, .pc-meaning, .pc-fine) { margin: 0; font-size: 13px; line-height: 20px; letter-spacing: .1px; color: var(--v6-ink-4); }
#view .pc-page .pc-meaning, #dialog .pc-dlg .pc-meaning { color: var(--v6-ink-3); }
#view .pc-page .pc-err, #dialog .pc-dlg .pc-err { margin: 0; font-size: 13px; line-height: 20px; color: var(--v6-red); }
#view .pc-page .pc-acts, #dialog .pc-dlg .pc-acts { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
#view .pc-wait-firm { margin: 0 0 40px; padding: 12px 0; border-top: 1px solid var(--v6-line); border-bottom: 1px solid var(--v6-line); }
#view .pc-wait-firm p { margin: 0; font-size: 15px; line-height: 24px; color: var(--v6-ink-2); }
#view .pc-when .v7-ilist { margin-top: 4px; }
#view .pc-grid > .pc-when { align-self: start; }
#view .pc-ended { margin-top: 0; }

/* ---------- the dialogs: review and sign, a grant, an answer, an acknowledgment, Manage access ---------- */
#dialog .pc-dlg { width: min(640px, 100%); }
#dialog .pc-dlg header small { font-size: 13px; line-height: 20px; color: var(--v6-ink-4); }
#dialog .pc-dlg header h2 { font-size: 19px; line-height: 28px; font-weight: 400; letter-spacing: 0; color: var(--v6-ink); }
#dialog .pc-dlg .db { font-size: 15px; line-height: 24px; color: var(--v6-ink-2); }
#dialog .pc-dlg .pc-by { display: flex; flex-direction: column; font-size: 13px; line-height: 20px; color: var(--v6-ink-3); }
#dialog .pc-dlg .pc-doc { max-height: 42vh; overflow: auto; padding: 4px 16px 16px; border: 1px solid var(--v6-line); border-radius: 8px; }
#dialog .pc-dlg .pc-doc h3 { margin: 12px 0 4px; font-size: 15px; line-height: 24px; font-weight: 500; color: var(--v6-ink); }
#dialog .pc-dlg .pc-doc p { margin: 0 0 8px; font-size: 15px; line-height: 24px; color: var(--v6-ink-2); }
#dialog .pc-dlg .pc-file { margin: 0; font-size: 15px; line-height: 24px; }
#dialog .pc-dlg .pc-file a, #dialog .pc-dlg .pc-fine a { color: var(--v6-link); display: inline-flex; align-items: center; gap: 4px; }
#dialog .pc-dlg .pc-file svg.i { width: 14px; height: 14px; }
#dialog .pc-dlg .pc-sign, #dialog .pc-dlg .pc-return { display: flex; flex-direction: column; gap: 8px; }
#dialog .pc-dlg .pc-sign[hidden], #dialog .pc-dlg .pc-return[hidden] { display: none; }
#dialog .pc-dlg .pc-dkv { margin: 0; padding: 0; list-style: none; }
#dialog .pc-dlg .pc-dkv li { display: flex; justify-content: space-between; gap: 16px; min-height: 32px; align-items: baseline; }
#dialog .pc-dlg .pc-dkv span { flex: none; font-size: 15px; line-height: 24px; color: var(--v6-ink-2); }
#dialog .pc-dlg .pc-dkv b { font-size: 15px; line-height: 24px; font-weight: 400; color: var(--v6-ink); text-align: right; overflow-wrap: anywhere; }
#dialog .pc-dlg .pc-grant { display: flex; flex-direction: column; gap: 8px; padding: 0 0 16px; border-bottom: 1px solid var(--v6-line); }
#dialog .pc-dlg .pc-grant:last-of-type { border-bottom: 0; padding-bottom: 0; }
#dialog .pc-dlg .pc-grant-h { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
#dialog .pc-dlg .pc-grant-h b { font-size: 15px; line-height: 24px; font-weight: 500; color: var(--v6-ink); }
#dialog .pc-dlg .pc-confirm { margin: 0; flex-basis: 100%; font-size: 13px; line-height: 20px; color: var(--v6-ink-2); }
#dialog .pc-dlg .btn.pc-danger:not(.primary) { color: var(--v6-red) !important; }
#dialog .pc-dlg .btn.primary.pc-danger { background: var(--v6-red) !important; border-color: var(--v6-red) !important; color: #fff !important; }
#dialog .pc-dlg .pc-allrows .pc-item { display: flex; align-items: flex-start; gap: 12px; padding: 12px 0; border-top: 1px solid var(--v6-line); }
#dialog .pc-dlg .pc-allrows .pc-what { flex: 1; min-width: 0; display: flex; flex-direction: column; }
#dialog .pc-dlg .pc-allrows .pc-what b { font-size: 15px; line-height: 24px; font-weight: 400; color: var(--v6-ink); }
#dialog .pc-dlg .pc-allrows .pc-what span { font-size: 13px; line-height: 20px; color: var(--v6-ink-4); }
#dialog .pc-dlg .pc-allrows .pc-meta { font-size: 13px; line-height: 20px; color: var(--v6-ink-4); }
#dialog .pc-dlg .pc-empty { margin: 0; color: var(--v6-ink-3); }

/* ---------- the phone: one column, tables become stacked rows, nothing scrolls sideways ---------- */
@media (max-width: 699px) {
  #view .pc-head .pc-head-t { flex: 1 1 200px; }
  #view .pc-head .v89-head-a { flex-basis: 100%; }
  #view .pc-band { gap: 12px 24px; padding: 12px 0; }
  #view .pc-band > div { flex: 1 1 100%; }
  #view .pc-table thead { display: none; }
  #view .pc-table, #view .pc-table tbody, #view .pc-table tr, #view .pc-table td { display: block; width: auto; }
  #view .pc-table tr { padding: 12px 0; border-bottom: 1px solid var(--v6-line); }
  #view .pc-table td, #view .v7-sec .v6-table.pc-table td, #view .v7-sec .v6-table.pc-table td:first-child { height: auto !important; min-height: 0 !important; padding: 2px 0 !important; border: 0 !important; text-align: left !important; overflow-wrap: anywhere; white-space: normal !important; }
  #view .pc-table tr { height: auto !important; }
  #view .pc-table td[data-l]:not([data-l=""]):not(:first-child)::before { content: attr(data-l); display: block; font-size: 12px; line-height: 20px; letter-spacing: .2px; color: var(--v6-ink-4); }
  #view .pc-item { flex-wrap: wrap; }
  #view .pc-wait .pc-item .pc-what, #dialog .pc-allrows .pc-item .pc-what { flex: 1 1 100%; }
  #view .pc-wait .pc-item > .btn { margin-left: 0; }
  #dialog .pc-dlg .pc-dkv li { flex-direction: column; gap: 0; }
  #dialog .pc-dlg .pc-dkv b { text-align: left; }
  #view .pc-notice { flex-wrap: wrap; align-items: flex-start; }
  #view .pc-notice p { flex: 1 1 calc(100% - 44px); }
  #view .pc-notice .pc-out { margin-left: 40px; }
  #view .pc-meter > div { flex: 1 1 40%; }
  #view .pc-item > .pc-ask-acts { flex-basis: 100%; }
  #view .pc-pages .v7-sec-h, #view .pc-monitor .v7-sec-h { flex-wrap: wrap; gap: 8px 12px; }
  #dialog .pc-dlg .pc-allrows .pc-item { flex-wrap: wrap; }
  #dialog .pc-dlg .pc-allrows .pc-date { flex-basis: 100%; white-space: normal; }
}
