:root{--ink:#172b3a;--muted:#56677a;--teal:#07746e;--teal-dark:#06665f;--accent-text:#07746e;--field-border:#8497a2;--focus:#0b5cad;--line:#dce5e9;--bg:#f4f7f8;--white:#fff;--danger:#b42318;--shadow:0 8px 28px rgba(20,45,60,.06);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);font-size:15px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a{color:inherit}.skip-link{position:absolute;left:12px;top:-80px;color:#102c3a;font-weight:700;background:#fff;padding:12px 16px;z-index:20;border:2px solid var(--teal);border-radius:8px}.skip-link:focus{top:12px}
:focus-visible{outline:3px solid var(--focus)!important;outline-offset:3px!important}.sidebar :focus-visible,.accessibility-trigger:focus-visible,.toast :focus-visible{outline-color:#ffbf47!important}main:focus,#login-view:focus,h1[tabindex="-1"]:focus{outline:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[hidden]{display:none!important}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 10% 15%,#d9f1ed 0,transparent 32%),radial-gradient(circle at 90% 85%,#e5edf9 0,transparent 35%),#f4f8f9}.login-card{background:#fff;width:min(100%,440px);padding:42px;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--teal);color:#fff;font-size:32px;font-weight:500;margin-bottom:22px}.brand-mark.small{width:36px;height:36px;font-size:24px;margin:0 11px 0 0;border-radius:11px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--teal);margin:0 0 8px}.login-card h1{font-size:29px;letter-spacing:-.8px;margin:0 0 7px}.muted{color:var(--muted);margin:4px 0 0}.login-card form{margin-top:28px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px;min-width:0}.field label,.field legend{font-size:13px;font-weight:700;color:#314553}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea,.toolbar input,.toolbar select{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--field-border);border-radius:8px;background:#fff;color:var(--ink)}input::placeholder,textarea::placeholder{color:#66757f}.field input:focus,.field select:focus,.field textarea:focus,.toolbar input:focus,.toolbar select:focus{border-color:var(--teal)}.field-error{min-height:0;color:var(--danger);font-size:13px;font-weight:600}.field-error:not(:empty)::before{content:"⚠\00a0";content:"⚠\00a0" / ""}.field-hint{font-size:12px;color:var(--muted)}[aria-invalid=true]{border-color:var(--danger)!important;border-width:2px!important}.req{color:var(--danger)}.field-error:empty{display:none}.form-error{color:var(--danger);font-size:14px;font-weight:600;margin:8px 0}.form-error:empty{display:none}.demo-note{background:#f0f7f6;border-radius:8px;padding:11px 13px;font-size:13px;color:#365c59;margin:20px 0 0}.button{border:1px solid transparent;border-radius:8px;padding:10px 16px;min-height:42px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none}.button:disabled,.button[aria-disabled=true]{opacity:.7;cursor:progress}.primary{background:var(--teal);color:#fff}.primary:hover{background:var(--teal-dark)}.secondary{background:#fff;border-color:var(--field-border);color:#344957}.secondary:hover{background:#f5f8f9}.full{width:100%;margin-top:8px}.small{min-height:36px;padding:6px 12px;font-size:13px}
.app-shell{min-height:100vh;display:flex}.sidebar{width:248px;flex:0 0 248px;background:#102c3a;color:#eaf3f5;padding:25px 16px;display:flex;flex-direction:column;min-height:100vh}.brand{display:flex;align-items:center;text-decoration:none;font-size:17px;font-weight:800;letter-spacing:-.3px;padding:0 8px 36px}.brand-sub{display:block;font-size:11px;letter-spacing:1.7px;color:#9bb5bd;font-weight:700;margin-top:2px}.nav-heading{font-size:11px;font-weight:800;letter-spacing:1.4px;color:#91aab4;padding:0 12px;margin:0 0 10px}.nav-link{width:100%;display:flex;align-items:center;gap:12px;text-decoration:none;border:0;background:transparent;color:#c3d2d8;padding:12px;border-radius:8px;font-size:14px;text-align:left;cursor:pointer;margin:3px 0}.nav-link span{font-size:18px;width:20px;text-align:center}.nav-link:hover,.nav-link.active{background:#214452;color:#fff}.nav-link.active{box-shadow:inset 3px 0 #46c3b3}.nav-gap{margin-top:34px}.sidebar-footer{margin-top:auto;color:#a9bec6;font-size:12px;padding:20px 10px 4px}.online-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#50c6a6;margin-right:8px}.main-column{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;gap:16px}.topbar-label{display:block;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:1.2px}.topbar strong{font-size:15px}.staff-chip{display:flex;align-items:center;gap:10px}.staff-chip strong,.staff-chip small{display:block}.staff-chip strong{font-size:13px}.staff-chip small{font-size:12px;color:var(--muted)}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#dff2ee;color:#12665e;font-weight:800;font-size:12px}.menu-button{display:none;border:1px solid var(--field-border);background:#fff;color:var(--ink);border-radius:7px;min-width:44px;min-height:44px;font-size:20px;cursor:pointer}
main{width:min(1440px,100%);margin:0 auto;padding:34px 38px 50px;flex:1}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.page-intro h1{font-size:29px;letter-spacing:-.8px;margin:0}.today-pill{font-size:13px;color:#47616e;background:#fff;border:1px solid var(--line);border-radius:20px;padding:8px 13px;margin:0}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:20px}.stat-card,.panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 8px rgba(20,45,60,.025)}.stat-card{padding:20px 21px;position:relative}.stat-card p{font-size:13px;color:var(--muted);margin:10px 0 2px}.stat-card strong{font-size:30px;letter-spacing:-1px}.stat-card small{display:block;color:var(--muted);font-size:12px}.stat-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;font-size:17px}.teal{background:#e2f5f1;color:#08776e}.blue{background:#e8effb;color:#3b63a5}.amber{background:#fff3dd;color:#956313}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{padding:21px;margin-bottom:19px;min-width:0}.panel-heading,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px}.panel h2,.toolbar h2{font-size:16px;margin:0}.panel-heading .muted,.toolbar .muted{font-size:13px}.quick-actions{margin-top:18px}.quick-action{display:flex;align-items:center;gap:12px;padding:13px 6px;min-height:44px;border-radius:8px;text-decoration:none}.quick-action>span:nth-child(2){flex:1}.quick-action strong,.quick-action small{display:block}.quick-action strong{font-size:14px}.quick-action small{font-size:12px;color:var(--muted);margin-top:2px}.quick-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:#e2f5f1;color:#08776e;font-size:20px}.blue-bg{background:#e8effb;color:#3b63a5}.purple-bg{background:#f0eafd;color:#7551a5}.arrow,.text-link{color:var(--accent-text);font-weight:700}.text-link{font-size:13px;text-decoration:underline;text-underline-offset:2px}.mini-list{margin-top:16px}.mini-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-top:1px solid #edf1f3}.mini-row strong,.mini-row small{display:block}.plain-list{list-style:none;margin:0;padding:0}.mini-row strong{font-size:13px}.mini-row small{font-size:12px;color:var(--muted)}.status{display:inline-flex;align-items:center;border-radius:20px;padding:4px 9px;font-size:12px;font-weight:700;white-space:nowrap;background:#edf2f4;color:#435965}.status.confirmed,.status.completed{background:#e4f5ed;color:#176544}.status.booked{background:#edf1fb;color:#405e9a}.status.checked-in{background:#fff2d9;color:#80570c}.status.cancelled{background:#fcebea;color:#9b342e}.disclaimer{font-size:12px;color:var(--muted);margin:20px 2px}.form-panel{border-color:#b8dcd6}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin-top:22px}.full-span{grid-column:1/-1}.field fieldset{border:0;padding:0;margin:0 0 17px}.radio-row{display:flex;flex-wrap:wrap;gap:12px}.radio-row label,.check-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;min-height:32px;cursor:pointer}.check-label{align-items:flex-start}.radio-row input,.check-label input{accent-color:var(--teal);width:20px;height:20px;flex:0 0 auto;margin:0}.check-label input{margin-top:2px}fieldset.field{border:0;padding:0;margin:0 0 17px}fieldset.field legend{padding:0;margin-bottom:7px}.form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:7px;border-top:1px solid #edf1f3}.icon-button{border:1px solid var(--field-border);background:#fff;color:var(--ink);border-radius:7px;min-width:44px;min-height:44px;cursor:pointer;font-size:16px}.toolbar{margin-bottom:17px}.toolbar-controls{display:flex;align-items:center;gap:9px;min-width:min(52%,480px)}.toolbar input{max-width:270px}.toolbar select{width:auto;min-width:130px}.table-wrap{width:100%;overflow:auto;max-height:min(70vh,640px);border:1px solid #e8edef;border-radius:8px}table{border-collapse:collapse;width:100%;min-width:690px;text-align:left}thead th{background:#f7f9fa;color:#4f606c;font-size:12px;text-transform:uppercase;letter-spacing:.6px;font-weight:800}th,td{padding:13px 14px;border-bottom:1px solid #edf1f3;vertical-align:middle}td,tbody th{font-size:13px}tbody th{font-weight:400;text-align:left}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfdfd}.patient-cell strong,.patient-cell small{display:block}.patient-cell small{font-size:12px;color:var(--muted)}.table-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;color:var(--muted);font-size:13px}.status-select{max-width:160px;min-height:36px;border:1px solid var(--field-border);border-radius:7px;padding:5px;background:#fff;color:var(--ink);font-size:13px}.empty-cell{text-align:center;color:var(--muted);padding:30px}.footer{display:flex;justify-content:space-between;gap:15px;padding:18px 38px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);background:#fff;padding-bottom:84px}.toast{position:fixed;right:24px;bottom:24px;z-index:45;max-width:min(420px,calc(100% - 32px));background:#123d3a;color:#fff;padding:13px 17px;border-radius:9px;box-shadow:0 8px 28px #102c3a33;opacity:0;transform:translateY(10px);transition:.2s;display:flex;align-items:flex-start;gap:12px}.toast.show{opacity:1;transform:translateY(0)}.toast-close{flex:0 0 auto;background:transparent;border:1px solid #ffffff80;color:#fff;border-radius:6px;min-width:32px;min-height:32px;cursor:pointer}.toast.error{background:#8c2923}
@media(max-width:900px){.sidebar{width:215px;flex-basis:215px}.topbar{padding:0 24px}main{padding:28px 24px}.content-grid{grid-template-columns:1fr}.toolbar{align-items:flex-start;flex-direction:column}.toolbar-controls{width:100%;min-width:0}.toolbar input{max-width:none;flex:1}.footer{padding:16px 24px}}
@media(max-width:650px){.app-shell{display:block}.sidebar{position:fixed;z-index:35;left:0;top:0;bottom:0;width:260px;min-height:0;overflow-y:auto;transform:translateX(-105%);visibility:hidden;transition:transform .2s,visibility 0s linear .2s;box-shadow:12px 0 30px #102c3a22}.sidebar.open{transform:translateX(0);visibility:visible;transition:transform .2s,visibility 0s}.menu-button{display:block}.topbar{height:68px;padding:0 16px;justify-content:flex-start}.topbar>div:nth-child(2){flex:1}.staff-chip{gap:0}.staff-chip>span:last-child{display:none}main{padding:25px 15px 35px}.page-intro{align-items:flex-start;flex-direction:column}.page-intro h1{font-size:25px}.today-pill{align-self:flex-start}.stat-grid{grid-template-columns:1fr;gap:10px}.stat-card{padding:14px 16px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;column-gap:10px}.stat-icon{grid-row:1/3}.stat-card p{margin:0}.stat-card strong{grid-column:3;grid-row:1/3;font-size:25px}.stat-card small{grid-column:2}.panel{padding:16px}.form-grid{grid-template-columns:1fr}.full-span{grid-column:auto}.toolbar-controls{flex-direction:column;align-items:stretch}.toolbar-controls input,.toolbar-controls select{max-width:none;width:100%}.panel-heading{align-items:flex-start}.footer{padding:15px;flex-direction:column;gap:5px}.login-card{padding:29px 23px}.radio-row{gap:9px 13px}}
@media(min-width:651px) and (max-width:760px){.sidebar{width:190px;flex-basis:190px}.brand{font-size:15px}.topbar{padding:0 16px}main{padding:24px 16px}.stat-grid{gap:9px}.stat-card{padding:14px}.stat-card strong{font-size:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.password-wrap{position:relative;display:flex}.password-wrap input{padding-right:84px!important}.password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);min-height:36px;min-width:64px;padding:0 10px;border:1px solid var(--field-border);border-radius:6px;background:#fff;color:var(--ink);font-weight:700;cursor:pointer}


/* Accessibility preferences and motion design */
.accessibility-widget{position:fixed;left:20px;bottom:20px;z-index:40;font-size:14px}
.accessibility-trigger{list-style:none;display:flex;align-items:center;gap:8px;padding:11px 15px;border-radius:999px;background:#102c3a;color:#fff;border:2px solid #fff;box-shadow:0 5px 20px #102c3a33;font-weight:750;cursor:pointer}
.accessibility-trigger::-webkit-details-marker{display:none}
.accessibility-trigger:hover{background:#214b5b}
.accessibility-panel{width:min(300px,calc(100vw - 32px));margin-bottom:10px;padding:15px;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 36px #102c3a2b}
.accessibility-title{font-weight:800;margin:0 0 10px}
.accessibility-option{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;width:100%;padding:10px 9px;margin:3px 0;text-align:left;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink);cursor:pointer}
.accessibility-option:hover{background:var(--bg);border-color:var(--line)}
.accessibility-option[aria-pressed="true"]{background:#e2f5f1;border-color:#9ccfc6;color:#075f58}
.setting-state{font-size:12px;font-weight:800;color:var(--muted)}
.accessibility-reset{margin-top:8px;padding:8px 4px;min-height:36px;border:0;background:none;color:var(--accent-text);text-decoration:underline;font-weight:700;cursor:pointer}
html.large-text{font-size:112.5%}
html.large-text body{font-size:17px}
html.large-text .muted,html.large-text .field label,html.large-text .field legend,html.large-text .nav-link,html.large-text .quick-action strong,html.large-text .text-link,html.large-text .footer,html.large-text .table-footer,html.large-text td,html.large-text th{font-size:1.08em}
html.dark-theme{color-scheme:dark;--accent-text:#5fd4c4;--field-border:#7d93a0;--focus:#ffbf47;--ink:#edf4f6;--muted:#b7c5cc;--line:#3b505b;--bg:#101d25;--white:#1a2b35;--shadow:0 8px 28px rgba(0,0,0,.25)}
html.dark-theme body{background:var(--bg);color:var(--ink)}
html.dark-theme .login-shell{background:radial-gradient(circle at 10% 15%,#1b3c3a 0,transparent 32%),radial-gradient(circle at 90% 85%,#24354b 0,transparent 35%),#101d25}
html.dark-theme .login-card,html.dark-theme .topbar,html.dark-theme .panel,html.dark-theme .stat-card,html.dark-theme .footer,html.dark-theme .today-pill,html.dark-theme .accessibility-panel{background:#1a2b35;color:var(--ink);border-color:var(--line)}
html.dark-theme .field label,html.dark-theme .field legend{color:#dce7eb}
html.dark-theme .field input:not([type=checkbox]):not([type=radio]),html.dark-theme .field select,html.dark-theme .field textarea,html.dark-theme .toolbar input,html.dark-theme .toolbar select,html.dark-theme .status-select{background:#10232d;color:#edf4f6;border-color:var(--field-border)}
html.dark-theme input::placeholder,html.dark-theme textarea::placeholder{color:#a6b5bd}
html.dark-theme .secondary,html.dark-theme .icon-button,html.dark-theme .menu-button,html.dark-theme .password-toggle{background:#243944;color:#edf4f6;border-color:var(--field-border)}html.dark-theme .eyebrow{color:var(--accent-text)}html.dark-theme .today-pill{color:var(--ink)}html.dark-theme .secondary{color:#edf4f6}html.dark-theme .req,html.dark-theme .field-error,html.dark-theme .form-error{color:#ff9d94}html.dark-theme [aria-invalid=true]{border-color:#ff9d94!important}html.dark-theme .skip-link{background:#fff}
html.dark-theme .demo-note{background:#203e3b;color:#d8f0e9}
html.dark-theme thead th{background:#223641;color:#d5e1e6}html.dark-theme tbody th{color:var(--ink)}
html.dark-theme td,html.dark-theme th,html.dark-theme .mini-row,html.dark-theme .quick-action{border-color:#344a55}
html.dark-theme tbody tr:hover,html.dark-theme .accessibility-option:hover{background:#263d48}
html.dark-theme .accessibility-option[aria-pressed="true"]{background:#174b45;color:#e0fff7;border-color:#367d72}
html.high-contrast{--ink:#07151c;--muted:#34434b;--line:#586a73;--bg:#fff;--white:#fff;--teal:#005b55;--teal-dark:#00453f;--accent-text:#005b55;--field-border:#34434b;--focus:#000}
html.dark-theme.high-contrast{--ink:#fff;--muted:#f0f4f6;--line:#a7bac4;--bg:#000;--white:#090f13;--teal:#005b55;--teal-dark:#00453f;--accent-text:#67e8d4;--field-border:#c8d6dd;--focus:#ffbf00}
html.high-contrast body,html.high-contrast .panel,html.high-contrast .stat-card,html.high-contrast .topbar,html.high-contrast .footer{border-color:var(--line)}
html.high-contrast :focus-visible{outline:4px solid var(--focus)!important;outline-offset:3px!important}html.high-contrast .sidebar :focus-visible{outline-color:#ffbf00!important}
html.dark-theme.high-contrast .login-card,html.dark-theme.high-contrast .panel,html.dark-theme.high-contrast .stat-card,html.dark-theme.high-contrast .topbar,html.dark-theme.high-contrast .footer{background:#090f13;color:#fff}
/* Subtle entrance and interaction animations; the motion toggle and OS preference can disable them. */
@keyframes fade-up{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes soft-pop{0%{opacity:0;transform:scale(.985)}100%{opacity:1;transform:scale(1)}}
.page:not([hidden]){animation:fade-up .36s ease both}
.stat-card{animation:soft-pop .42s ease both}
.stat-card:nth-child(2){animation-delay:.06s}.stat-card:nth-child(3){animation-delay:.12s}
.panel{transition:box-shadow .2s ease,transform .2s ease}
.quick-action,.button,.nav-link,.accessibility-option{transition:background-color .18s ease,color .18s ease,transform .18s ease,border-color .18s ease}
.quick-action:hover{transform:translateX(3px)}
.button:hover{transform:translateY(-1px)}
html.reduce-motion *,html.reduce-motion *::before,html.reduce-motion *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
html.reduce-motion .quick-action:hover,html.reduce-motion .button:hover{transform:none!important}
@media(prefers-reduced-motion:reduce){.page:not([hidden]),.stat-card{animation:none!important}.panel,.quick-action,.button,.nav-link{transition:none!important}}
@media(max-width:650px){.accessibility-widget{left:12px;bottom:12px}.accessibility-trigger{padding:10px 13px}.toast{bottom:76px}}

/* Large-text mode: keep form controls in step with the bigger text. */
html.large-text td,html.large-text tbody th,html.large-text .status-select,html.large-text .status,html.large-text .field-error,html.large-text .field-hint{font-size:1.08em}
/* Windows High Contrast / forced colours: keep focus and state visible. */
@media (forced-colors:active){:focus-visible{outline:3px solid CanvasText!important}.accessibility-option[aria-pressed="true"]{border:2px solid Highlight}.nav-link.active{border-left:4px solid Highlight}.status{border:1px solid CanvasText}}
.login-shell{padding-bottom:96px}

/* Lists used for navigation and quick actions */
.nav-list,.quick-actions{list-style:none;margin:0;padding:0}
.quick-actions{margin-top:18px}
.quick-actions li:not([hidden])~li:not([hidden]){border-top:1px solid #edf1f3}
html.dark-theme .quick-actions li{border-color:#344a55}
.role-note{margin-top:14px;font-size:13px}
/* Long tables: column headings stay visible while the rows scroll; paging keeps each view short. */
thead th{position:sticky;top:0;z-index:1;box-shadow:inset 0 -1px #dce5e9}
.table-footer{flex-wrap:wrap}
.pager{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-left:auto}
.pager label{font-weight:600}
.pager select{min-height:36px;border:1px solid var(--field-border);border-radius:7px;padding:4px 6px;background:#fff;color:var(--ink);font-size:13px}
.pager-nav{display:flex;align-items:center;gap:8px}
.pager-nav [aria-disabled=true]{opacity:.55;cursor:not-allowed}
.pager-nav [aria-disabled=true]:hover{transform:none;background:#fff}
html.dark-theme .pager select{background:#10232d;color:#edf4f6}
html.dark-theme .pager-nav [aria-disabled=true]:hover{background:#243944}
.form-actions{flex-wrap:wrap}
/* Small screens: each table row becomes a labelled card, so nothing scrolls sideways. */
@media(max-width:650px){
  .table-wrap{border:0;max-height:none;overflow:visible}
  table,tbody{display:block;min-width:0}
  thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  tbody tr{display:block;border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin-bottom:10px}
  tbody tr:last-child td{border-bottom:0}
  tbody th,tbody td{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;border:0;text-align:right;overflow-wrap:anywhere}
  tbody td::before{content:attr(data-label);flex:0 0 38%;text-align:left;font-weight:700;color:var(--muted)}
  tbody th.patient-cell{display:block;text-align:left;padding-bottom:9px;margin-bottom:3px;border-bottom:1px solid var(--line)}
  tbody th.patient-cell strong{font-size:15px}
  tbody td.empty-cell{display:block;text-align:center;padding:22px 6px}
  tbody td.empty-cell::before{content:none}
  .status-select{max-width:none}
  .pager{margin-left:0;width:100%}
  .table-footer{align-items:flex-start;flex-direction:column}
  .form-actions .button{flex:1 1 auto}
  .toolbar-controls select{width:100%}
}
html.dark-theme thead th{box-shadow:inset 0 -1px #344a55}
/* Logo mark: the plus is drawn with two bars so it is always exactly centred, whatever font is installed. */
.brand-mark,.brand-mark.small{position:relative;font-size:0}
.brand-mark::before,.brand-mark::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;border-radius:2px}
.brand-mark::before{width:44%;height:10%}
.brand-mark::after{width:10%;height:44%}
