.r45-dialog{width:min(94vw,560px);max-height:85vh;padding:24px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink)}
.r45-dialog::backdrop{background:rgb(0 0 0 / .6)}.r45-dialog h2{margin-top:0}.r45-dialog [hidden]{display:none!important}
.r45-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.r45-actions button{min-height:44px}
#workspace-nav [data-r45-catalogue]{display:none!important}
[data-r45-context]{margin-bottom:24px}.r45-subnav{display:flex;gap:8px;flex-wrap:wrap}.r45-subnav a{padding:9px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);background:var(--surface-soft);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.r45-subnav a[aria-current=page]{background:var(--surface-strong);border-color:var(--teal);font-weight:700}
.r45-hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:24px 0}.r45-hub-grid>a{display:flex;justify-content:space-between;gap:16px;align-items:center;color:var(--ink);text-decoration:none;margin:0;min-height:90px}.r45-hub-grid>a:hover{background:var(--surface-soft)}
.r45-health{border:1px solid var(--line-strong);padding:20px;border-radius:var(--radius-md);margin:20px 0;background:var(--surface)}.r45-health h2{margin-top:0}.r45-health li+li{margin-top:16px}.r45-attention{border-left:5px solid #d89825}
.r45-template-summary{padding:16px;margin:16px 0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-soft)}.r45-template-summary ul{padding-left:20px;margin-bottom:0}.r45-template-summary li{margin:5px 0}
.r45-permissions{padding:12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);margin:16px 0}.r45-permissions>summary{font-weight:700;cursor:pointer}.r45-permissions [hidden]{display:none!important}
body[data-role=admin] .workspace :is(.small,.muted,small){color:var(--muted)}
.r45-preview-state{padding:12px 16px;border-left:5px solid #d89825;background:var(--surface-soft);color:var(--ink);font-weight:650}
@media(max-width:600px){.r45-hub-grid{grid-template-columns:1fr}.r45-actions{flex-direction:column}.r45-actions button{width:100%}.r45-subnav{gap:6px}.r45-subnav a{flex:1 1 42%;justify-content:center}.r45-dialog{padding:20px}}
.r45-issued-record{display:block;padding:12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);background:var(--surface-soft)}.r45-signed-record{border-left:5px solid #26976d}.r45-inactive-record{border-left:5px solid #d89825}
.r45-health h2{font-size:1.35rem}.r45-health details{margin:12px 0}.r45-health p{margin:8px 0}
/* R49: one compact register pattern for clinical documents and billing work. */
.work-tabs{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 24px;border-bottom:1px solid var(--line-strong);padding-bottom:8px}
.work-tabs :is(a,button){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--muted);text-decoration:none;font:inherit}
.work-tabs :is([aria-current=page],[aria-pressed=true]){color:var(--ink);background:var(--surface-soft);border-color:var(--line-strong);font-weight:700}
.register-filters{display:grid;grid-template-columns:minmax(220px,2fr) repeat(2,minmax(160px,1fr));gap:16px;align-items:end;margin:20px 0}
.register-filters label{display:grid;gap:6px;min-width:0;font-size:.9rem;font-weight:600}
.register-filters :is(input,select){width:100%;min-height:44px;min-width:0}
.document-register{background:transparent;border:0;padding:0}.document-groups{display:grid;gap:20px}
.document-groups .document-group{margin:0;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}
.document-group>header{padding:18px 20px;border-bottom:1px solid var(--line-strong);background:var(--surface-soft)}
.document-group>header h2{font-size:1.1rem;margin:0 0 4px}.document-group>header p{margin:0;color:var(--muted);font-size:.9rem;overflow-wrap:anywhere}
.document-list{list-style:none;margin:0;padding:0}.document-list .document-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:18px 20px;margin:0;border:0;border-bottom:1px solid var(--line-strong);align-items:center}.document-list .document-row:last-child{border-bottom:0}
.document-row .document-status{margin:5px 0;color:var(--ink)}.document-row small{color:var(--muted);overflow-wrap:anywhere}.document-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}
.workspace-location{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:var(--muted)}.workspace-location label{margin:0;min-width:0;max-width:380px;flex:1}.workspace-location select{width:100%;min-height:44px}.workspace-location a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.handoff-register{margin-top:32px;border-top:1px solid var(--line-strong);padding-top:24px}.handoff-register td{overflow-wrap:anywhere}.handoff-register td button{margin:4px 0}.handoff-register li+li{margin-top:4px}
:is(.work-tabs,.document-register,.handoff-register,.workspace-location) :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--teal);outline-offset:3px}
@media(max-width:700px){.register-filters{grid-template-columns:1fr}.work-tabs{gap:4px}.work-tabs :is(a,button){flex:1 1 auto;padding:10px 12px}.document-list .document-row{grid-template-columns:1fr;gap:14px;padding:16px}.document-actions{justify-content:flex-start}.document-actions .button{min-height:44px}.workspace-location{gap:8px}.workspace-location>a{width:100%}.document-group>header{padding:16px}}
.document-group>header h2{overflow-wrap:anywhere}
.handoff-register td label{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:700px){.document-register .register-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.document-register .register-filters>label:first-child{grid-column:1/-1}.document-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.document-tools a{padding:10px 8px;font-size:.9rem}}

.r55-centre .r45-subnav{margin:1rem 0 1.5rem}
.r55-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:1rem;align-items:start}
.r55-board,.r55-next{border:1px solid var(--line-strong);border-radius:var(--radius-md);padding:1rem 1.2rem;background:var(--surface);color:var(--ink)}
.r55-board h2,.r55-next h2{margin:0;font-size:1.2rem}
.r55-board header,.r55-care li,.r55-task{display:flex;align-items:center;gap:.75rem}
.r55-board header{justify-content:space-between;flex-wrap:wrap}
.r55-task,.r55-care li{min-height:48px;border-bottom:1px solid var(--line);padding:.55rem 0}
.r55-task{color:var(--ink);text-decoration:none}.r55-task:hover,.r55-task:focus-visible{text-decoration:underline}
.r55-task strong{font-size:1.4rem;min-width:1.9rem}.r55-task span:last-child{margin-left:auto}
.r55-care{list-style:none;margin:0;padding:0}.r55-care li{flex-wrap:wrap}.r55-care li>div{flex:1 1 7em;overflow-wrap:anywhere}
.r55-care small{display:block;color:var(--muted)}.r55-care a,.r55-board header a{min-height:44px;display:inline-flex;align-items:center}
.r55-next{margin:0 0 1rem;border-inline-start:4px solid var(--teal)}.r55-next p{margin:.55rem 0}
.r55-next .toolbar>.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0}
.r55-next a:focus-visible,.r55-task:focus-visible,.r55-care a:focus-visible{outline:3px solid var(--teal);outline-offset:2px}

@media(max-width:700px){
 [data-r45-context] .r45-subnav{flex-wrap:nowrap;max-width:100%;overflow-x:auto;padding:3px 3px 9px}
 [data-r45-context] .r45-subnav a{flex:0 0 auto}
}

.r56-auth-options,.r56-inputs,.r56-desks,.r56-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:.8rem;margin:1rem 0}
.r56-auth-options{grid-template-columns:1fr}.r56-date-row{display:flex;align-items:end;flex-wrap:wrap;gap:.6rem;margin:.5rem 0}
.r56-duty-label{color:var(--muted);margin:.5rem 0 1.2rem}.r56-desks{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.r56-desk{border-top:2px solid var(--teal);background:var(--surface);padding:.75rem 1rem}.r56-desk h3{margin:0 0 .5rem;color:var(--ink)}
.r56-desk nav{display:grid}.r56-desk a{display:flex;align-items:center;padding:.3rem 0;min-height:44px;color:var(--ink);border-bottom:1px solid var(--line)}
.r56-facts dt{color:var(--muted)}.r56-facts dd{margin:.3rem 0;font-weight:600}
[data-health-form]{margin:1rem 0}[data-health-form] [hidden]{display:none!important}
.embedded-module[data-module="communication"] .case-button{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);text-align:start}
.embedded-module[data-module="communication"] .case-button[aria-current="true"]{border-inline-start:4px solid var(--teal);background:var(--surface-soft)}
.embedded-module[data-module="communication"] .case-button :is(.cc-subject,strong){color:var(--ink)}
.embedded-module[data-module="communication"] .case-button :is(.cc-preview,.cc-case-meta){color:var(--muted)}
.r56-desk a:focus-visible,.r56-auth-options button:focus-visible{outline:3px solid var(--teal);outline-offset:2px}

/* Small text on workspace surfaces must remain legible in either theme. */
#app .ac-search-trigger kbd{color:inherit}
#app .patient-record-facts dt,#app .saved-preference{color:var(--muted)}
@media(max-width:40rem){
 #app .ac-heading{flex-wrap:wrap}
 #app .ac-heading>div{flex:1 1 100%;min-width:0}
}

/* Reserve enough room to scroll the last focused control above the active chat bar. */
body.secure-site:has([data-chat-alert]:not([hidden])){padding-block-end:var(--chat-focus-space,0px)}
