/* Eigenständige Arbeitsbereiche des ESRA-Therapeutenbereichs. */
.workspace-page { max-width: 1180px; margin: 0 auto; padding: 2.5rem 1.25rem 4rem; }
.workspace-page-header { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding-bottom: 1rem; border-bottom: 1px solid var(--workspace-line); }
.workspace-page-header h1 { margin: 0; font-size: clamp(2rem, 4vw, 3.25rem); letter-spacing: -.045em; color: var(--workspace-ink); }
.workspace-page-header p { max-width: 45rem; margin: .4rem 0 0; color: var(--workspace-muted); }
.workspace-page-nav { display: flex; flex-wrap: wrap; gap: .45rem; margin: 1.25rem 0 1.5rem; }
.workspace-page-nav a { padding: .55rem .8rem; border: 1px solid var(--workspace-line); border-radius: .5rem; color: var(--workspace-ink); text-decoration: none; font-weight: 700; }
.workspace-page-nav a[aria-current="page"], .workspace-page-nav a:hover, .workspace-page-nav a:focus-visible { color: #fff; background: var(--workspace-teal); border-color: var(--workspace-teal); }
.workspace-session { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin: 1.25rem 0; padding: .8rem 1rem; background: var(--workspace-paper); border: 1px solid var(--workspace-line); border-radius: .75rem; box-shadow: var(--workspace-shadow); }
.workspace-session > div:first-child { display:flex; flex-wrap:wrap; gap:.45rem; }.workspace-session strong { color: var(--workspace-ink); }.workspace-session span { color: var(--workspace-muted); }
.workspace-session-actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.workspace-panel { padding: clamp(1rem, 3vw, 1.6rem); margin-top: 1rem; background: var(--workspace-paper); border: 1px solid var(--workspace-line); border-radius: 1rem; box-shadow: var(--workspace-shadow); }
.workspace-panel h2 { margin-top: 0; color: var(--workspace-ink); }.workspace-panel p { color: var(--workspace-muted); }
.workspace-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(18rem, .7fr); gap: 1.25rem; }
.workspace-list { display: grid; gap: .7rem; }.workspace-list-item { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding: 1rem; border: 1px solid var(--workspace-line); border-radius: .65rem; background: color-mix(in srgb, var(--workspace-paper) 94%, var(--workspace-teal)); }
.workspace-list-item strong { display: block; color: var(--workspace-ink); }.workspace-list-item span { display: block; margin-top: .2rem; color: var(--workspace-muted); font-size: .9rem; }
.record-entry { align-items: flex-start; }.record-entry > div { min-width: 0; width: 100%; }.record-entry-details { display: grid; grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr)); gap: .45rem .8rem; margin: .75rem 0 0; }.record-entry-details div { min-width: 0; padding: .45rem .55rem; border-radius: .45rem; background: color-mix(in srgb, var(--workspace-teal) 8%, var(--workspace-paper)); }.record-entry-details dt { color: var(--workspace-muted); font-size: .74rem; font-weight: 700; }.record-entry-details dd { margin: .15rem 0 0; overflow-wrap: anywhere; color: var(--workspace-ink); font-size: .88rem; }.record-patient-note { margin: .75rem 0 0 !important; padding: .7rem .8rem; border: 1px solid color-mix(in srgb, var(--workspace-coral) 38%, var(--workspace-line)); border-radius: .55rem; background: color-mix(in srgb, var(--workspace-coral) 8%, var(--workspace-paper)); overflow-wrap: anywhere; color: var(--workspace-ink) !important; }
.workspace-list-item button, .workspace-list-item a { flex: 0 0 auto; }.workspace-empty { padding: 2rem 1rem; text-align: center; color: var(--workspace-muted); }
.workspace-form { display: grid; gap: .8rem; }.workspace-form label { display:grid; gap:.35rem; color:var(--workspace-ink); font-weight:700; }.workspace-form input, .workspace-form select, .workspace-form textarea { min-height: 2.7rem; padding: .55rem .7rem; border:1px solid var(--workspace-line); border-radius:.5rem; color:var(--workspace-ink); background:var(--surface); font:inherit; }.workspace-form input:focus, .workspace-form select:focus, .workspace-form textarea:focus { outline: 3px solid color-mix(in srgb, var(--workspace-teal) 25%, transparent); border-color: var(--workspace-teal); }
.workspace-form-note, .workspace-feedback { min-height: 1.3rem; margin: 0; color: var(--workspace-muted); }.workspace-feedback[data-success="true"] { color: #146c55; }.workspace-feedback[data-success="false"] { color: #b23b28; }
.workspace-detail-header { display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; }.workspace-kicker { color:var(--workspace-coral); font-weight:800; text-transform:uppercase; letter-spacing:.08em; font-size:.78rem; }.workspace-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem; margin:1.2rem 0; }.workspace-meta div { padding:.8rem; border-radius:.55rem; background:color-mix(in srgb, var(--workspace-teal) 10%, var(--workspace-paper)); }.workspace-meta dt { color:var(--workspace-muted); font-size:.78rem; }.workspace-meta dd { margin:.2rem 0 0; color:var(--workspace-ink); font-weight:700; overflow-wrap:anywhere; }
.page-qr { display:grid; grid-template-columns:auto minmax(0,1fr); gap:1rem; align-items:center; margin-top:1rem; padding:1rem; border:1px solid var(--workspace-line); border-radius:.7rem; }.page-qr img, .page-qr svg { width:150px; max-width:100%; height:auto; padding:.35rem; background:#fff; border-radius:.4rem; }.page-qr > div:not(:first-child) { display:grid; min-width:0; gap:.4rem; }.page-qr code { display:block; overflow-wrap:anywhere; color:var(--workspace-ink); }.pairing-code-fields { display:grid; gap:.55rem; margin:.25rem 0; }.pairing-code-fields div { display:grid; gap:.2rem; }.pairing-code-fields dt { font-size:.8rem; font-weight:700; color:var(--workspace-muted); }.pairing-code-fields dd { display:flex; align-items:center; gap:.45rem; min-width:0; margin:0; }.pairing-code-fields code { flex:1 1 auto; min-width:0; padding:.35rem .45rem; border-radius:.35rem; background:color-mix(in srgb,var(--workspace-paper) 82%,var(--workspace-line)); }.pairing-code-fields .btn { flex:0 0 auto; }.page-dialog { width:min(100% - 2rem, 33rem); border:1px solid var(--workspace-line); border-radius:1rem; background:var(--workspace-paper); color:var(--workspace-ink); box-shadow:0 20px 55px rgba(0,0,0,.35); }.page-dialog::backdrop { background:rgba(7,31,33,.62); }.page-dialog .workspace-form { padding:1.25rem; }
.pairing-case { display:grid; grid-template-columns:minmax(0,1fr) auto; }.pairing-case > .pairing-inline-qr { grid-column:1 / -1; }.pairing-inline-qr { margin-top:1rem; border-color:color-mix(in srgb,var(--workspace-coral) 45%,var(--workspace-line)); background:color-mix(in srgb,var(--workspace-coral) 6%,var(--workspace-paper)); }.pairing-inline-qr p { margin:0; }.pairing-inline-qr > button { justify-self:start; }
.dialog-title-row { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; }.dialog-title-row h2 { margin:0 0 .45rem; }.dialog-title-row p { margin:0; }.dialog-close { display:grid; place-items:center; width:2.75rem; height:2.75rem; flex:0 0 auto; border:0; border-radius:.55rem; color:var(--workspace-ink); background:transparent; font:inherit; font-size:1.55rem; cursor:pointer; }.dialog-close:hover, .dialog-close:focus-visible { background:color-mix(in srgb, var(--workspace-teal) 12%, var(--workspace-paper)); }
.archive-section { margin-top:1.4rem; padding-top:1rem; border-top:1px solid var(--workspace-line); }.archive-toggle { display:flex; align-items:center; gap:.55rem; min-height:2.75rem; padding:.55rem .75rem; border:0; border-radius:.55rem; color:var(--workspace-ink); background:transparent; font:inherit; font-weight:750; cursor:pointer; }.archive-toggle span { display:grid; place-items:center; min-width:1.65rem; min-height:1.65rem; margin:0; border-radius:999px; color:var(--workspace-ink); background:color-mix(in srgb, var(--workspace-teal) 12%, var(--workspace-paper)); font-size:.78rem; }.archive-toggle:hover, .archive-toggle:focus-visible { background:color-mix(in srgb, var(--workspace-teal) 8%, var(--workspace-paper)); }
.patient-list-actions, .record-actions, .retention-actions { display:flex; flex-wrap:wrap; gap:.55rem; align-items:center; }.patient-list-actions { justify-content:flex-end; }.patient-record-hero { padding:clamp(1.15rem,3vw,1.8rem); }.patient-record-heading { display:flex; justify-content:space-between; gap:1.25rem; align-items:flex-start; }.record-title-line { display:flex; flex-wrap:wrap; align-items:center; gap:.65rem; }.record-title-line h2 { margin:0; font-size:clamp(1.65rem,4vw,2.45rem); letter-spacing:-.035em; }.record-status { display:inline-flex; align-items:center; min-height:1.8rem; padding:.25rem .6rem; border-radius:999px; color:var(--workspace-ink); background:color-mix(in srgb,var(--workspace-teal) 13%,var(--workspace-paper)); font-size:.78rem; font-weight:750; }.record-device { margin:.4rem 0 0 !important; font-size:.82rem; overflow-wrap:anywhere; }.record-quick-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.7rem; margin-top:1.25rem; }.record-stat { min-width:0; padding:.85rem; border-radius:.7rem; background:color-mix(in srgb,var(--workspace-teal) 7%,var(--workspace-paper)); }.record-stat span { display:block; color:var(--workspace-muted); font-size:.76rem; font-weight:700; }.record-stat strong { display:block; margin-top:.3rem; color:var(--workspace-ink); font-size:1.05rem; overflow-wrap:anywhere; }.record-stat small { display:block; margin-top:.2rem; color:var(--workspace-muted); }
.patient-record-layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(18rem,.85fr); gap:1rem; align-items:start; }.patient-record-primary, .patient-record-secondary { min-width:0; }.patient-record-secondary { position:sticky; top:1rem; }.record-section-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; margin-bottom:1rem; }.record-section-heading h2 { margin:0; }.record-section-heading p { margin:.25rem 0 0; }.record-tabs { display:flex; flex-wrap:wrap; gap:.25rem; padding:.2rem; border-radius:.6rem; background:color-mix(in srgb,var(--workspace-teal) 8%,var(--workspace-paper)); }.record-tabs button { min-height:2.3rem; padding:.4rem .65rem; border:0; border-radius:.45rem; color:var(--workspace-muted); background:transparent; font:inherit; font-size:.8rem; font-weight:700; cursor:pointer; }.record-tabs button[aria-selected='true'] { color:#fff; background:var(--workspace-teal); }.record-chart { min-height:12rem; display:grid; place-items:center; padding:1rem; border-radius:.75rem; background:color-mix(in srgb,var(--workspace-teal) 5%,var(--workspace-paper)); overflow:hidden; }.record-chart-empty { max-width:32rem; margin:0; text-align:center; color:var(--workspace-muted); }.record-chart svg { width:100%; height:10rem; overflow:visible; }.record-chart-line { fill:none; stroke:var(--workspace-teal); stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }.record-chart-point { fill:var(--workspace-paper); stroke:var(--workspace-teal); stroke-width:2; }.record-chart-label { fill:var(--workspace-muted); font-size:10px; }.record-timeline { position:relative; display:grid; gap:.8rem; }.record-timeline::before { content:""; position:absolute; top:.8rem; bottom:.8rem; left:.48rem; width:1px; background:var(--workspace-line); }.timeline-entry { position:relative; padding-left:1.75rem; }.timeline-entry::before { content:""; position:absolute; top:.45rem; left:.2rem; width:.58rem; height:.58rem; border-radius:999px; background:var(--workspace-teal); box-shadow:0 0 0 4px var(--workspace-paper); }.timeline-entry article { padding:.9rem 1rem; border-radius:.7rem; background:color-mix(in srgb,var(--workspace-teal) 6%,var(--workspace-paper)); }.timeline-entry-heading { display:flex; justify-content:space-between; gap:1rem; }.timeline-entry-heading strong { color:var(--workspace-ink); }.timeline-entry-heading time { color:var(--workspace-muted); font-size:.78rem; white-space:nowrap; }.timeline-entry-kind { display:block; margin-bottom:.2rem; color:var(--workspace-teal); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.record-soap-form textarea { resize:vertical; min-height:5.2rem; }.goal-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.5rem; align-items:end; }.goal-form label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }.goal-form input { min-height:2.7rem; padding:.55rem .7rem; border:1px solid var(--workspace-line); border-radius:.5rem; color:var(--workspace-ink); background:var(--surface); font:inherit; }.record-goals { display:grid; gap:.55rem; margin-top:.9rem; }.record-goal { display:flex; align-items:flex-start; gap:.65rem; padding:.65rem; border-radius:.55rem; background:color-mix(in srgb,var(--workspace-teal) 7%,var(--workspace-paper)); color:var(--workspace-ink); }.record-goal input { width:1.1rem; height:1.1rem; margin-top:.15rem; accent-color:var(--workspace-teal); }.record-goal.is-complete span { color:var(--workspace-muted); text-decoration:line-through; }.retention-dialog { width:min(100% - 2rem, 38rem); }.retention-notice { padding:1rem; border:1px solid color-mix(in srgb,var(--workspace-coral) 45%,var(--workspace-line)); border-radius:.7rem; background:color-mix(in srgb,var(--workspace-coral) 8%,var(--workspace-paper)); }.retention-notice strong { color:var(--workspace-ink); }.retention-notice p { margin:.4rem 0 0; color:var(--workspace-muted); }.retention-confirm { grid-template-columns:auto 1fr !important; align-items:start; font-weight:600 !important; }.retention-confirm input { width:1.15rem; min-height:1.15rem; margin-top:.15rem; accent-color:var(--workspace-teal); }.btn-danger { color:#fff; background:#a13d30; border-color:#a13d30; }.btn-danger:hover, .btn-danger:focus-visible { background:#842f25; border-color:#842f25; }.btn:disabled { opacity:.48; cursor:not-allowed; transform:none; }
[data-theme='dark'] .workspace-panel, [data-theme='dark'] .workspace-session, [data-theme='dark'] .workspace-list-item, [data-theme='dark'] .page-dialog { background: var(--workspace-paper); color: var(--text); }.workspace-page [hidden] { display:none !important; }
@media (max-width: 960px) { .patient-record-layout { grid-template-columns:1fr; }.patient-record-secondary { position:static; }.record-quick-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 760px) { .workspace-page { padding: 1.5rem 1rem 3rem; }.workspace-page-header, .workspace-session, .workspace-detail-header, .patient-record-heading, .record-section-heading, .pairing-case { align-items: flex-start; flex-direction: column; }.workspace-grid { grid-template-columns: 1fr; }.workspace-meta { grid-template-columns: 1fr; }.workspace-list-item { align-items: flex-start; flex-direction: column; }.patient-list-actions { justify-content:flex-start; }.page-qr { grid-template-columns:1fr; }.page-qr img { max-width: 180px; }.record-tabs { width:100%; }.record-tabs button { flex:1 1 auto; }.goal-form { grid-template-columns:1fr; } }
@media (max-width: 430px) { .record-quick-stats { grid-template-columns:1fr; }.timeline-entry-heading { flex-direction:column; gap:.2rem; }.timeline-entry-heading time { white-space:normal; } }
@media (prefers-reduced-motion: reduce) { .workspace-page *, .workspace-page *::before, .workspace-page *::after { scroll-behavior:auto !important; transition:none !important; } }
.workspace-page-nav a[aria-current="page"], .workspace-page-nav a:hover, .workspace-page-nav a:focus-visible, .record-tabs button[aria-selected="true"] { color:#092326; }.workspace-page .btn-primary { color:#32120d; }.timeline-toggle { display:none; margin-top:1rem; }
.retention-actions { display:grid; grid-template-columns:1fr 1fr; }.retention-actions #cancel-retention { grid-column:1 / -1; justify-self:start; }
@media (max-width:430px) { .record-timeline:not(.is-expanded) .timeline-entry:nth-child(n+5) { display:none; }.timeline-toggle:not([hidden]) { display:inline-flex; }.retention-actions { grid-template-columns:1fr; }.retention-actions #cancel-retention { grid-column:auto; } }

/* Patientenakte: fester Plan, überprüfbare Vorschläge und lesbarer Verlauf. */
.password-input-wrapper { display:flex; align-items:stretch; min-width:0; }.password-input-wrapper input { min-width:0; flex:1 1 auto; border-top-right-radius:0; border-bottom-right-radius:0; }.toggle-password-btn { display:grid; place-items:center; width:2.7rem; flex:0 0 auto; border:1px solid var(--workspace-line); border-left:0; border-radius:0 .5rem .5rem 0; color:var(--workspace-ink); background:var(--workspace-paper); font:inherit; cursor:pointer; }.toggle-password-btn:hover, .toggle-password-btn:focus-visible { color:#fff; background:var(--workspace-teal); }.toggle-password-btn.is-visible { color:#fff; background:var(--workspace-coral); }
.record-chart { min-height:14rem; }.record-chart svg { height:12rem; }.record-chart-grid { stroke:var(--workspace-line); stroke-width:1; stroke-dasharray:3 4; }.record-chart-value { fill:var(--workspace-ink); font-size:9px; font-weight:700; }.record-chart-axis { fill:var(--workspace-muted); font-size:9px; }.record-trend-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; margin-top:.8rem; }.record-trend-summary div { padding:.7rem .8rem; border-radius:.55rem; background:color-mix(in srgb,var(--workspace-teal) 8%,var(--workspace-paper)); }.record-trend-summary strong, .record-trend-summary span { display:block; }.record-trend-summary strong { color:var(--workspace-ink); }.record-trend-summary span { margin-top:.15rem; color:var(--workspace-muted); font-size:.78rem; }.medication-plan-list { display:grid; gap:.65rem; }.medication-plan-item { padding:.8rem; border:1px solid var(--workspace-line); border-radius:.65rem; background:color-mix(in srgb,var(--workspace-teal) 6%,var(--workspace-paper)); }.medication-plan-item.is-inactive { opacity:.68; }.medication-plan-item.has-suggestion { border-color:#c58a20; background:color-mix(in srgb,#d99a2b 11%,var(--workspace-paper)); }.medication-plan-head { display:flex; justify-content:space-between; align-items:start; gap:.7rem; }.medication-plan-head strong, .medication-plan-head span { display:block; }.medication-plan-head strong { color:var(--workspace-ink); }.medication-plan-head > div > span { margin-top:.18rem; color:var(--workspace-muted); font-size:.8rem; }.medication-status { padding:.22rem .45rem; border-radius:999px; color:var(--workspace-ink); background:color-mix(in srgb,var(--workspace-teal) 14%,var(--workspace-paper)); font-size:.72rem; font-weight:750; white-space:nowrap; }.medication-suggestion { display:grid; gap:.45rem; margin-top:.7rem; padding:.7rem; border-radius:.5rem; background:color-mix(in srgb,#d99a2b 10%,var(--workspace-paper)); }.medication-suggestion p { margin:0; color:var(--workspace-ink); font-size:.83rem; }.medication-suggestion p span { color:var(--workspace-muted); }.medication-suggestion > div { display:flex; flex-wrap:wrap; gap:.45rem; }
.nutrition-day { display:grid; gap:.65rem; }.nutrition-day + .nutrition-day { padding-top:1rem; border-top:1px solid var(--workspace-line); }.nutrition-day h3 { margin:0; color:var(--workspace-teal); font-size:.78rem; font-weight:800; letter-spacing:.025em; text-transform:uppercase; }.nutrition-day .record-timeline { gap:.65rem; }.nutrition-day .timeline-entry article { background:color-mix(in srgb,var(--workspace-teal) 4%,var(--workspace-paper)); }.nutrition-day .timeline-entry-kind { color:var(--workspace-coral); }
[data-theme='dark'] .toggle-password-btn { background:var(--workspace-paper); color:var(--text); }
@media (max-width:520px) { .record-trend-summary { grid-template-columns:1fr; }.medication-plan-head { flex-direction:column; } }

/* Selects dürfen bei langen Namen niemals aus dem Verwaltungsbereich ragen. */
.workspace-form select { min-width:0; max-width:100%; width:100%; overflow:hidden; text-overflow:ellipsis; }
