/* Unified paper shell.
 * Keep global workspace modes, secondary tabs, migration/design panes, and
 * encounter backdrop on the same warm clinical-paper tone.
 */
html,
body,
.app,
#content-daysheet,
#content-appt,
#tabs-v2-region,
.tab-pane,
.tab-pane.active,
#tab-content-customize,
#tab-content-migrate,
.builder-inspector-root,
.design-hub,
.design-walkthrough,
.appt-layout{
  background:var(--os-canvas,var(--bg,#eceae6))!important;
  color:var(--os-card-text,var(--text,#1a1a18));
}

:root{
  --os-arrow-lane:62px;
  --os-arrow-lane-gap:14px;
  --os-page-pad-x:24px;
  --os-safe-page-pad-x:calc(var(--os-arrow-lane) + var(--os-arrow-lane-gap));
}

/* Shared page context row: the first line under any secondary tab row. */
#tabs-v2-region > .tab-pane{
  padding:0!important;
  border-top:0!important;
  text-align:left!important;
  font-family:var(--sans-paper,var(--font,system-ui,sans-serif))!important;
  font-style:normal!important;
  font-size:13px!important;
  letter-spacing:0!important;
  color:var(--ink,var(--text,#1a1a18))!important;
  overflow:auto!important;
}
#tab-content-inbox::before,
#tab-content-waitlists::before,
#tab-content-billing::before{
  content:none!important;
  display:none!important;
}
.workspace-page-header,
body.encounter-active .encounter-context-strip{
  min-height:49px!important;
  height:49px!important;
  width:100%!important;
  justify-content:flex-start!important;
  align-items:center!important;
  padding:10px var(--os-safe-page-pad-x)!important;
  margin:0!important;
  border-bottom:1px solid var(--hairline-faint,rgba(0,0,0,0.06))!important;
  background:var(--os-canvas,var(--bg,#eceae6))!important;
  text-align:left!important;
  font-family:var(--sans-paper,var(--font,system-ui,sans-serif))!important;
  font-style:normal!important;
  letter-spacing:0!important;
  box-sizing:border-box!important;
}
.workspace-page-header .workspace-page-title,
.workspace-page-header .dashboard-title,
#content-daysheet .workspace-page-header .workspace-page-title,
#content-daysheet .workspace-page-header .dashboard-title,
#tabs-v2-region .workspace-page-header .workspace-page-title,
#tabs-v2-region .workspace-page-header .dashboard-title,
body.encounter-active .encounter-context-name{
  margin:0!important;
  color:var(--ink,var(--text,#1a1a18))!important;
  font-family:var(--display,var(--serif,ui-serif,Georgia,serif))!important;
  font-size:18px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-align:left!important;
}
.workspace-page-header .os-action,
body.encounter-active .encounter-context-strip > *{
  flex:0 0 auto;
}
body.encounter-active #main-banner{
  display:none!important;
}
#tab-content-customize .design-walkthrough,
#tab-content-migrate .migrate-panel{
  width:100%!important;
  max-width:none!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  font-family:var(--sans-paper,var(--font,system-ui,sans-serif))!important;
  font-style:normal!important;
  box-sizing:border-box!important;
}
#tab-content-customize .design-tool-header,
#tab-content-migrate .migrate-header{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  gap:var(--os-workspace-title-gap,12px)!important;
  min-height:32px!important;
  height:auto!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 28px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-sizing:border-box!important;
}
#tab-content-customize .design-tool-header h2,
#tab-content-migrate .migrate-header h2{
  flex:0 0 auto!important;
  margin:0!important;
  color:var(--os-dashboard-ink,var(--ink,var(--text,#1a1a18)))!important;
  font-family:var(--display,var(--serif,Georgia,serif))!important;
  font-size:var(--os-workspace-title-size,18px)!important;
  font-weight:var(--os-workspace-title-weight,600)!important;
  line-height:var(--os-workspace-title-line-height,1)!important;
  letter-spacing:0!important;
  text-align:left!important;
}
#tab-content-customize .design-tool-header p,
#tab-content-migrate .migrate-header p{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  font-family:var(--sans-paper,var(--font,system-ui,sans-serif))!important;
  font-size:var(--os-workspace-date-size,18px)!important;
  font-weight:500!important;
  line-height:1!important;
  color:var(--ink-mute,var(--text-muted,#6e6d69))!important;
  text-align:left!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#tab-content-customize .design-walkthrough,
#tab-content-migrate .migrate-panel{
  width:100%!important;
  max-width:1480px!important;
  margin:0 auto!important;
  padding:26px 40px 60px!important;
}
#tab-content-surveys .tab-stub{
  width:100%!important;
  max-width:1480px!important;
  margin:0 auto!important;
  padding:36px 40px 60px!important;
}
#tab-content-surveys .tab-stub-title{
  margin:0 0 28px!important;
  color:var(--os-dashboard-ink,var(--ink,var(--text,#1a1a18)))!important;
  font-family:var(--display,var(--serif,Georgia,serif))!important;
  font-size:44px!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:0!important;
}
#tab-content-customize .design-tool-header .builder-eyebrow,
#tab-content-migrate .migrate-header .builder-eyebrow{
  display:none!important;
}
#tab-content-customize #design-selector-mount,
#tab-content-customize .design-next-placeholder,
#tab-content-migrate .migrate-subpane{
  width:100%!important;
  max-width:1400px!important;
  margin:0 auto!important;
  padding:16px var(--os-safe-page-pad-x)!important;
  box-sizing:border-box!important;
}
#tab-content-customize .design-next-placeholder:empty{
  display:none!important;
}

.topbar,
.topbar-strip{
  background:var(--os-banner-bg,#e7ddd0)!important;
  background-image:none!important;
  border-bottom-color:var(--os-banner-border,rgba(92,68,42,0.20))!important;
  box-shadow:0 1px 0 rgba(255,255,255,0.42) inset,0 1px 6px color-mix(in srgb,var(--os-banner-border,rgba(92,68,42,0.20)) 40%,transparent)!important;
}
.topbar::after{
  background:linear-gradient(90deg,transparent,var(--ink-line,#c8c7c3),transparent)!important;
  opacity:0.55;
}
.logo,
.login-logo{
  gap:0!important;
}
.os-logo-lockup,
.topbar .logo .os-logo-lockup,
.login-logo .os-logo-lockup{
  width:260px!important;
  height:auto!important;
  display:block!important;
  overflow:visible!important;
  flex:0 0 auto!important;
}
.login-logo .os-logo-lockup{
  width:320px!important;
}
.os-logo-lockup .ink-stroke{
  fill:none!important;
  stroke:var(--os-logo-mark,var(--ink,#1f1b16))!important;
  stroke-width:2.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.os-logo-lockup .accent{
  fill:var(--os-logo-word-primary,var(--os-accent,#c2553a))!important;
  color:var(--os-logo-word-primary,var(--os-accent,#c2553a))!important;
}
.os-logo-lockup .ink{
  fill:var(--os-logo-mark,var(--ink,#1f1b16))!important;
  color:var(--os-logo-mark,var(--ink,#1f1b16))!important;
  font-weight:500!important;
}
.os-logo-lockup .logo-rule{
  stroke:var(--os-logo-mark,var(--ink,#1f1b16))!important;
  stroke-opacity:0.18!important;
  stroke-width:1!important;
}
.os-logo-lockup .word{
  font-family:var(--os-logo-font,'Newsreader',Georgia,serif)!important;
  font-size:40px!important;
  font-weight:600!important;
  letter-spacing:var(--os-logo-letter-spacing,-0.02em)!important;
  font-optical-sizing:auto!important;
}
.logo-icon,
.topbar .logo .logo-icon,
.login-logo .logo-icon{
  width:26px!important;
  height:26px!important;
  flex:0 0 auto!important;
  background:transparent!important;
  color:var(--os-logo-mark,var(--ink,#1f1e1d))!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.logo-icon::before,
.logo-icon::after,
.topbar .logo .logo-icon::before,
.topbar .logo .logo-icon::after,
.login-logo .logo-icon::before,
.login-logo .logo-icon::after{display:none!important;}
.logo-icon svg,
.logo-icon .os-logo-eye,
.topbar .logo .logo-icon svg,
.topbar .logo .logo-icon .os-logo-eye,
.login-logo .logo-icon svg,
.login-logo .logo-icon .os-logo-eye{
  width:26px!important;
  height:26px!important;
  display:block!important;
  overflow:visible!important;
}
.os-logo-eye-body,
.os-logo-eye-iris{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:var(--os-logo-eye-stroke,2.5)!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.os-logo-eye-pupil,
.topbar .logo-icon svg .os-logo-eye-pupil,
.topbar .logo-icon svg circle.os-logo-eye-pupil:last-of-type,
.login-logo .logo-icon svg .os-logo-eye-pupil,
.login-logo .logo-icon svg circle.os-logo-eye-pupil:last-of-type{fill:var(--os-logo-word-primary,var(--os-accent,#c2553a))!important;stroke:none!important;}
.os-logo-eye-lashes{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:var(--os-logo-eye-stroke,2.5)!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.logo-divider,
.topbar .logo-divider,
.login-logo .logo-divider{
  width:1px!important;
  height:14.3px!important;
  flex:0 0 auto!important;
  display:block!important;
  background:var(--os-logo-mark,var(--ink,#1f1b16))!important;
  opacity:0.18!important;
}
.logo-name,
.topbar .logo-name,
.login-logo .logo-name{
  color:var(--os-logo-word-primary,var(--os-banner-text,var(--ink,#1f1e1d)))!important;
  background:none!important;
  -webkit-text-fill-color:currentColor!important;
  font-family:var(--os-logo-font,var(--display,ui-serif,Georgia,serif))!important;
  font-size:20px!important;
  font-optical-sizing:auto!important;
  font-weight:var(--os-logo-primary-weight,500)!important;
  letter-spacing:var(--os-logo-letter-spacing,-0.02em)!important;
  line-height:1!important;
}
.logo-word-primary{
  color:var(--os-logo-word-primary,#d97757)!important;
  -webkit-text-fill-color:currentColor!important;
  font-weight:var(--os-logo-primary-weight,500)!important;
}
.logo-name em,
.logo-word-secondary{
  color:var(--os-logo-word-secondary,var(--os-banner-muted-text,var(--ink-mute,#7a7567)))!important;
  -webkit-text-fill-color:currentColor!important;
  font-style:normal!important;
  font-weight:var(--os-logo-secondary-weight,500)!important;
}
.tb-div{
  background:var(--os-banner-border,var(--hairline-mid,rgba(0,0,0,0.13)))!important;
}

.topbar-mode-tabs{
  background:var(--os-banner-bg,#e7ddd0)!important;
  background-image:none!important;
}
.topbar-encounter-mode{
  color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  background:var(--os-banner-active-bg,rgba(255,255,255,0.42))!important;
  background-image:none!important;
  border-bottom-color:var(--os-banner-text,var(--ink,#1a1a18))!important;
}
.workspace-tabs-row,
.encounter-tabs-row{
  background:var(--os-subnav-bg,var(--gray-100,#f0efed))!important;
  background-image:none!important;
  border-top-color:var(--os-subnav-border,var(--hairline-mid,rgba(0,0,0,0.13)))!important;
  border-bottom:1px solid var(--os-subnav-border,var(--hairline-mid,rgba(0,0,0,0.13)));
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.55),0 1px 0 rgba(0,0,0,0.03)!important;
}
.topbar-tabs-v2,
.encounter-tabs-v2{
  background:transparent!important;
  background-image:none!important;
}
.tab-btn,
.tab-btn-mode,
.tab-btn-v2{
  color:var(--os-banner-muted-text,var(--ink-mute,#6e6d69))!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
.tab-btn-v2{color:var(--os-subnav-text,var(--ink-mute,#6e6d69))!important;}
.tab-btn:hover,
.tab-btn-mode:hover{
  color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  background:var(--os-banner-active-bg,rgba(255,255,255,0.34))!important;
}
.tab-btn-v2:hover{
  color:var(--os-subnav-active-text,var(--ink,#1a1a18))!important;
  background:var(--os-subnav-active-bg,rgba(255,255,255,0.22))!important;
}
.tab-btn.active,
.tab-btn-mode.active{
  color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  background:var(--os-banner-active-bg,rgba(255,255,255,0.42))!important;
  border-bottom-color:var(--os-banner-text,var(--ink,#1a1a18))!important;
}
.tab-btn-v2.active{
  color:var(--os-subnav-active-text,var(--ink,#1a1a18))!important;
  background:var(--os-subnav-active-bg,rgba(255,255,255,0.30))!important;
  border-bottom-color:var(--os-subnav-active-text,var(--ink,#1a1a18))!important;
}
.tab-btn-v2.active::after{
  background:var(--os-subnav-active-text,var(--ink,#1a1a18))!important;
}

.topbar-pt .banner-name,
.topbar-pt .banner-sub{
  color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  background:none!important;
  -webkit-text-fill-color:currentColor!important;
}
.topbar-pt{
  top:36px!important;
}
.topbar-pt .banner-name.empty{
  color:var(--os-banner-muted-text,var(--ink-mute,#6e6d69))!important;
}
.banner-avatar{
  background:var(--os-card-bg,var(--surface,#fff))!important;
  border-color:var(--os-banner-border,var(--hairline-mid,rgba(0,0,0,0.13)))!important;
  color:var(--os-banner-muted-text,var(--ink-mute,#6e6d69))!important;
}
.banner-avatar.has-pt{
  color:var(--os-banner-text,var(--ink,#1a1a18))!important;
}
.tbtn,
.tbtn-light{
  color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  background:#fff!important;
  border-color:color-mix(in srgb,var(--os-banner-text,var(--ink,#1a1a18)) 24%,transparent)!important;
  box-shadow:none!important;
  transform:none!important;
}
.tbtn:hover,
.tbtn-light:hover{
  color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  background:#fff!important;
  border-color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  transform:none!important;
}
.tbtn-light,
#encounter-save-btn.tbtn-light,
#ds-add-pt-appt,
.ds-add-patient-btn{
  color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  background:#fff!important;
  background-image:none!important;
  border-color:color-mix(in srgb,var(--os-banner-text,var(--ink,#1a1a18)) 24%,transparent)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.tbtn-light:hover,
#encounter-save-btn.tbtn-light:hover,
#ds-add-pt-appt:hover,
.ds-add-patient-btn:hover{
  color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  background:#fff!important;
  background-image:none!important;
  border-color:var(--os-banner-text,var(--ink,#1a1a18))!important;
  box-shadow:none!important;
}
.tbtn-dark,
#btn-logout-top,
#ds-back-btn{
  color:#fff!important;
  background:var(--os-banner-text,var(--ink,#1a1a18))!important;
  border-color:var(--os-banner-text,var(--ink,#1a1a18))!important;
}
.tbtn-dark:hover,
#btn-logout-top:hover,
#ds-back-btn:hover{
  color:#fff!important;
  background:color-mix(in srgb,var(--os-banner-text,var(--ink,#1a1a18)) 90%,#fff)!important;
  border-color:color-mix(in srgb,var(--os-banner-text,var(--ink,#1a1a18)) 90%,#fff)!important;
  transform:none!important;
}
.os-appt-type-chip,
#banner-appt-chip.os-appt-type-chip,
#ds-table tbody td:nth-child(4) > span.os-appt-type-chip{
  background:var(--os-appt-chip-bg,var(--os-success-soft,#e5efe6))!important;
  color:var(--os-appt-chip-fg,var(--os-success,#4b7a5b))!important;
  border-color:var(--os-appt-chip-border,color-mix(in srgb,var(--os-success,#4b7a5b) 34%,transparent))!important;
  background-image:none!important;
}
.dashboard-appointment-type-text{
  display:inline-block!important;
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:9px!important;
  font-weight:700!important;
  color:var(--blue,var(--os-logo-clay,#d97757))!important;
  background:var(--blue-soft,var(--os-accent-soft,#f4e5dc))!important;
  background-image:none!important;
  border:0!important;
  border-radius:12px!important;
  box-shadow:none!important;
  padding:2px 8px!important;
  margin:0!important;
  letter-spacing:0.05em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
#ds-calendar-btn.os-date-action,
#ds-calendar-btn.os-date-action:hover,
#ds-calendar-btn.os-date-action:focus-visible,
#ds-calendar-btn.os-date-action #ds-date,
#ds-calendar-btn.os-date-action svg{
  color:var(--ink,var(--os-sheet-text,#1f1e1d))!important;
  stroke:currentColor!important;
}

.tab-stub,
.migrate-options article,
.migrate-export,
.design-hub-card,
.design-back,
.design-output-card,
.design-output-preview{
  background:var(--os-card-bg,var(--surface,#fff))!important;
}

#content-daysheet .card{
  /* Strong ink rule, matches the mockup ::after frame ring + thead/footer
   * dividers. Kept as a local fallback so the contract's softer
   * --ds-card-border can still win when the bridge resolves it. */
  --os-dashboard-table-rule:rgba(31,30,29,0.8);
  background:var(--ds-card-bg,var(--surface,#FAF4E8))!important;
  border:0!important;
  border-radius:var(--radius,7px)!important;
  overflow:hidden!important;
  position:relative!important;
  isolation:isolate!important;
}
#content-daysheet .card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border:1px solid var(--os-dashboard-table-rule,rgba(31,30,29,0.8))!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  z-index:2!important;
}
#ds-table{
  background:transparent!important;
  table-layout:fixed!important;
  width:100%!important;
  border:0!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:0!important;
  overflow:visible!important;
  position:relative!important;
  z-index:1!important;
}
#ds-table col.ds-col-time{width:5%!important;}
#ds-table col.ds-col-patient{width:17.5%!important;}
#ds-table col.ds-col-status{width:6.5%!important;}
#ds-table col.ds-col-appointment{width:12%!important;}
#ds-table col.ds-col-reason{width:15%!important;}
#ds-table col.ds-col-testing{width:7%!important;}
#ds-table col.ds-col-survey{width:5%!important;}
#ds-table col.ds-col-files{width:4.5%!important;}
#ds-table col.ds-col-billing{width:5.5%!important;}
#ds-table col.ds-col-followup{width:7%!important;}
#ds-table col.ds-col-encounter{width:9.5%!important;}
#ds-table col.ds-col-edit{width:5.5%!important;}
#ds-table thead tr{
  background:var(--ds-table-header-bg,var(--os-dashboard-header-footer-bg,color-mix(in srgb,var(--accent,#C2553A) 13%,var(--surface,#FAF4E8))))!important;
  border-bottom:1px solid var(--os-dashboard-table-rule,rgba(31,30,29,0.8))!important;
}
#ds-table th,
#ds-table td{
  text-align:center!important;
  vertical-align:middle!important;
  padding-left:6px!important;
  padding-right:6px!important;
  overflow-wrap:anywhere!important;
}
#ds-table thead th{
  width:auto!important;
  padding-left:4px!important;
  padding-right:4px!important;
  letter-spacing:0.035em!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:visible!important;
  border-bottom:1px solid var(--os-dashboard-table-rule,rgba(31,30,29,0.8))!important;
}
#ds-table tbody,
#ds-body{
  background:var(--ds-row-bg,var(--surface,#FAF4E8))!important;
}
#ds-body tr,
#ds-body td{
  background:transparent!important;
}
#ds-body tr:not(.dashboard-footer-row):nth-child(odd) td{
  background:var(--ds-row-bg,var(--surface,#FAF4E8))!important;
}
/* Even-row stripe — kept on the paper-2 system token rather than
 * promoting into the contract; see audit report Q (alternation
 * stripe is a visual-style choice, not a colour-role choice). */
#ds-body tr:not(.dashboard-footer-row):nth-child(even) td{
  background:var(--os-sheet-header-bg,var(--paper-2,var(--paper,#F4ECDD)))!important;
}
#ds-body tr:hover{
  background:var(--ds-row-hover-bg,var(--os-dashboard-row-hover-bg,color-mix(in srgb,var(--accent,#C2553A) 13%,var(--surface,#FAF4E8))))!important;
  box-shadow:inset 3px 0 0 var(--ink,#1F1B16),inset 0 1px 0 rgba(255,255,255,0.6)!important;
}
#ds-body tr:not(.dashboard-footer-row):hover td{
  background:var(--ds-row-hover-bg,var(--os-dashboard-row-hover-bg,color-mix(in srgb,var(--accent,#C2553A) 13%,var(--surface,#FAF4E8))))!important;
}
#ds-body .dashboard-footer-row,
#ds-body .dashboard-footer-cell{
  background:var(--ds-footer-bg,color-mix(in srgb,var(--accent,#C2553A) 13%,var(--surface,#FAF4E8)))!important;
}
#ds-body .dashboard-footer-row{
  border-top:1px solid var(--os-dashboard-table-rule,rgba(31,30,29,0.8))!important;
  border-bottom:0!important;
}
#ds-body .dashboard-footer-cell{
  border-top:1px solid var(--os-dashboard-table-rule,rgba(31,30,29,0.8))!important;
}
#ds-table tbody tr::after,
#ds-table tbody tr:hover::after{
  content:none!important;
  display:none!important;
}
#ds-table tbody td:first-child{
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:18px!important;
  font-weight:700!important;
  color:var(--ink,var(--os-card-text,#1f1e1d))!important;
  letter-spacing:0!important;
}
.dashboard-testing-list{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:2px 9px!important;
  align-items:center!important;
  justify-content:center!important;
}
.dashboard-testing-item{
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.25!important;
  color:var(--ink,var(--os-card-text,#1f1e1d))!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  white-space:nowrap!important;
  letter-spacing:0!important;
}
.dashboard-billing-status{
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:11px!important;
  font-weight:600!important;
  color:var(--ink,var(--os-card-text,#1f1e1d))!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  white-space:nowrap!important;
}
.dashboard-billing-status-submitted{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  color:var(--ink,var(--os-card-text,#1f1e1d))!important;
  font-size:13px!important;
  line-height:1!important;
}
.dashboard-followup-status-book,
.dashboard-followup-status-booked{
  background:var(--ds-followup-book-bg,var(--ds-encounter-view-solid-bg,var(--info,#3D5F87)))!important;
  color:var(--ds-followup-book-text,var(--ds-encounter-view-solid-text,var(--surface,#FAF4E8)))!important;
  font-size:13px!important;
  line-height:1!important;
}
.dashboard-survey-status{
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:11px!important;
  font-weight:600!important;
  color:var(--ink,var(--os-card-text,#1f1e1d))!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  white-space:nowrap!important;
}
.dashboard-referral-status{
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:11px!important;
  font-weight:600!important;
  color:var(--ink,var(--os-card-text,#1f1e1d))!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  white-space:nowrap!important;
}
.dashboard-followup-status{
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:11px!important;
  font-weight:600!important;
  color:var(--ink,var(--os-card-text,#1f1e1d))!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  white-space:nowrap!important;
}
.dashboard-status-toggle{
  display:inline!important;
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.2!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.dashboard-status-toggle:focus,
.dashboard-status-toggle:focus-visible{
  outline:none!important;
  box-shadow:none!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
/* Status column text — bound to the day-sheet status contract. */
.dashboard-status-empty{
  color:var(--ds-row-faint-text,var(--faint,#A89782))!important;
}
.dashboard-status-checked-in{
  color:var(--ds-status-checkedin-text,var(--state-followup,#3D5F87))!important;
}
.dashboard-status-testing{
  color:var(--ds-status-testing-text,var(--state-testing,#A8872D))!important;
}
.dashboard-status-being-seen{
  color:var(--ds-status-inroom-text,var(--state-inroom,#2F7C8A))!important;
}
.dashboard-status-checked-out{
  color:var(--ds-status-complete-text,var(--success,#4b7a5b))!important;
  font-size:13px!important;
}
.dashboard-status-no-show{
  color:var(--ds-status-noshow-text,var(--state-neutral,#7a7567))!important;
  text-decoration:line-through!important;
}
.dashboard-files-action,
.dashboard-start-encounter-btn,
.dashboard-edit-appointment-btn,
.dashboard-remove-appointment-btn{
  min-height:24px!important;
  padding:3px 8px!important;
  margin:0!important;
  font-size:10px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}
.dashboard-edit-appointment-btn,
.dashboard-remove-appointment-btn{
  width:24px!important;
  min-width:24px!important;
  padding:3px 0!important;
}
.dashboard-remove-appointment-btn{
  margin-left:4px!important;
}
#ds-body select{
  background-color:var(--os-input-bg,#faf8f4)!important;
}
#ds-body select:hover,
#ds-body select:focus,
#ds-body select:focus-visible{
  border-color:var(--os-input-border,var(--os-component-border,#d9d3c4))!important;
  box-shadow:none!important;
  outline:none!important;
}

/* Dashboard table repaint: match the workspace queue/widget paper system. */
#content-daysheet .files-layout{
  background:var(--os-canvas,var(--bg,#f0eee6))!important;
  font-family:var(--sans-paper,var(--font))!important;
  color:var(--ink,var(--text))!important;
  padding:0!important;
  justify-content:flex-start!important;
}
#content-daysheet .dashboard-page-shell{
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
}
#content-daysheet .dashboard-daysheet-grid{
  display:block!important;
  width:100%!important;
  max-width:1400px!important;
  margin:0 auto!important;
  box-sizing:border-box!important;
  padding:16px var(--os-safe-page-pad-x)!important;
}
#content-daysheet .card{
  --os-dashboard-table-rule:var(--os-component-border,var(--hairline-mid,rgba(0,0,0,0.13)));
  background:var(--os-component-content-bg,var(--surface,#faf9f5))!important;
  border:1px solid var(--os-component-border,var(--hairline-mid,rgba(0,0,0,0.13)))!important;
  border-radius:10px!important;
  box-shadow:var(--shadow-paper,0 1px 0 rgba(0,0,0,0.02),0 10px 22px -16px rgba(0,0,0,0.10))!important;
  overflow:hidden!important;
  position:relative!important;
  isolation:isolate!important;
}
#content-daysheet .card::after{
  content:none!important;
  display:none!important;
}
#ds-table{
  background:var(--os-component-content-bg,var(--surface,#faf9f5))!important;
  color:var(--ink,var(--text))!important;
  font-family:var(--sans-paper,var(--font))!important;
  border:0!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
#ds-table thead tr{
  background:var(--os-component-header-footer-bg,var(--paper-2,var(--bg,#f0eee6)))!important;
  border-bottom:1px solid var(--hairline-faint,rgba(0,0,0,0.06))!important;
}
#ds-table thead th{
  font-family:var(--sans-paper,var(--font))!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:0.08em!important;
  line-height:1.15!important;
  color:var(--ink-mute,var(--text-muted))!important;
  border-bottom:1px solid var(--hairline-faint,rgba(0,0,0,0.06))!important;
  padding:10px 6px!important;
  text-transform:uppercase!important;
}
#ds-table tbody,
#ds-body{
  background:var(--os-component-content-bg,var(--surface,#faf9f5))!important;
}
#ds-body tr,
#ds-body td{
  color:var(--ink,var(--text))!important;
  font-family:var(--sans-paper,var(--font))!important;
}
#ds-body tr:not(.dashboard-footer-row):nth-child(odd) td{
  background:var(--os-component-content-bg,var(--surface,#faf9f5))!important;
}
#ds-body tr:not(.dashboard-footer-row):nth-child(even) td{
  background:var(--os-sheet-hover-bg,var(--paper-2,var(--bg,#f0eee6)))!important;
}
#ds-body tr:not(.dashboard-footer-row):hover td{
  background:var(--os-sheet-hover-bg,var(--ink-link-soft,var(--blue-soft,#f4e5dc)))!important;
}
#ds-body tr:hover{
  box-shadow:none!important;
}
#ds-body .dashboard-footer-row,
#ds-body .dashboard-footer-cell{
  background:var(--os-component-header-footer-bg,var(--paper-2,var(--bg,#f0eee6)))!important;
}
#ds-body .dashboard-footer-row,
#ds-body .dashboard-footer-cell{
  border-top:1px solid var(--hairline-faint,rgba(0,0,0,0.06))!important;
}
#ds-table tbody td:first-child{
  font-family:var(--sans-paper,var(--font))!important;
  font-size:13px!important;
  font-weight:700!important;
  color:var(--ink,var(--text))!important;
}

.exam-grid.general-consult-grid > .card,
body.encounter-active .exam-grid.general-consult-grid > .card{
  --widget-chrome:var(--os-component-header-footer-bg,var(--os-card-header-bg,var(--paper-2,#f5f3ee)))!important;
  --widget-border:var(--os-component-border,var(--os-card-border,var(--hairline-mid,rgba(0,0,0,0.13))))!important;
  background:var(--os-component-content-bg,var(--os-card-bg,var(--surface,#fff)))!important;
  border-color:var(--os-component-border,var(--os-card-border,var(--hairline-mid,rgba(0,0,0,0.13))))!important;
}
.exam-grid.general-consult-grid > .card > .card-hdr:first-child,
body.encounter-active .exam-grid.general-consult-grid > .card > .card-hdr:first-child{
  background:var(--os-component-header-footer-bg,var(--os-card-header-bg,var(--paper-2,#f5f3ee)))!important;
  border-bottom-color:var(--os-component-border,var(--os-card-border,var(--hairline-mid,rgba(0,0,0,0.13))))!important;
}
.exam-grid.general-consult-grid > .card > .card-scroll,
body.encounter-active .exam-grid.general-consult-grid > .card > .card-scroll{
  background:var(--os-component-content-bg,var(--os-card-bg,var(--surface,#fff)))!important;
}
.exam-grid.general-consult-grid > .card > .card-footer,
body.encounter-active .exam-grid.general-consult-grid > .card > .card-footer{
  background:var(--os-component-header-footer-bg,var(--os-card-footer-bg,var(--paper-2,#f5f3ee)))!important;
  border-top-color:var(--os-component-border,var(--os-card-border,var(--hairline-mid,rgba(0,0,0,0.13))))!important;
}

/* Day sheet consumes the universal colour contract first.
 * Shape, spacing, typography, and layout stay owned by this file. */
#content-daysheet,
#tabs-v2-region{
  --os-dashboard-paper:var(--app-page-bg,var(--paper,#F4ECDD));
  --os-dashboard-surface:var(--ds-card-bg,var(--surface,#FAF4E8));
  --os-dashboard-header-footer-bg:var(--ds-table-header-bg,color-mix(in srgb,var(--ink,#1F1B16) 3%,var(--surface,#FAF4E8)));
  --os-dashboard-row-hover-bg:var(--ds-row-hover-bg,color-mix(in srgb,var(--accent-soft,#F1DED4) 50%,var(--surface,#FAF4E8)));
  --os-dashboard-ink:var(--ds-row-text,var(--ink,#1F1B16));
  --os-dashboard-muted:var(--ds-row-muted-text,var(--muted,#7A6D5C));
  --os-dashboard-faint:var(--ds-row-faint-text,var(--faint,#A89782));
  --os-dashboard-line:var(--ds-card-border,color-mix(in srgb,var(--ink,#1F1B16) 8%,transparent));
  --os-dashboard-line-soft:var(--ds-row-rule,var(--line-soft,#EFE6D2));
  --os-dashboard-accent:var(--accent,#C2553A);
  --os-dashboard-accent-soft:var(--ds-type-pill-bg,var(--accent-soft,#F1DED4));
  --os-dashboard-accent-ink:var(--ds-type-pill-text,var(--accent-ink,#8E3A26));
  --os-dashboard-success:var(--success,#5C7A5B);
  --os-dashboard-warning:var(--warning,#A57225);
  --os-dashboard-info:var(--info,#3D5F87);
  --os-dashboard-danger:var(--state-danger,#B33A2E);
}
#content-daysheet .files-layout,
#tabs-v2-region .tab-pane{
  background:var(--os-dashboard-paper)!important;
}
.workspace-page-shell,
#content-daysheet .dashboard-page-shell,
#tabs-v2-region .workspace-page-shell{
  width:100%!important;
  max-width:1480px!important;
  margin:0 auto!important;
  padding:36px 40px 60px!important;
}
.workspace-page-header,
#content-daysheet .workspace-page-header,
#tabs-v2-region .workspace-page-header{
  display:flex!important;
  align-items:flex-end!important;
  gap:24px!important;
  height:auto!important;
  min-height:44px!important;
  margin:0 0 28px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-sizing:border-box!important;
}
.workspace-page-header .workspace-page-title,
.workspace-page-header .dashboard-title,
#content-daysheet .workspace-page-header .workspace-page-title,
#content-daysheet .workspace-page-header .dashboard-title,
#content-daysheet .workspace-page-title,
#content-daysheet .dashboard-title,
#tabs-v2-region .workspace-page-header .workspace-page-title,
#tabs-v2-region .workspace-page-header .dashboard-title,
#tabs-v2-region .workspace-page-title,
#tabs-v2-region .dashboard-title{
  display:block!important;
  flex:0 0 auto!important;
  font-family:var(--display,var(--serif,Georgia,serif))!important;
  font-size:44px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  line-height:1!important;
  color:var(--os-dashboard-ink)!important;
  margin:0!important;
  text-align:left!important;
}
.workspace-page-header .os-date-action,
#content-daysheet .os-date-action,
#tabs-v2-region .os-date-action{
  align-self:flex-end!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:auto!important;
  padding:0 0 4px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--os-dashboard-muted)!important;
  box-shadow:none!important;
  font:500 14px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#content-daysheet #ds-add-patient-action{
  margin-left:auto!important;
  align-self:center!important;
  min-height:auto!important;
  padding:11px 18px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--ds-add-action-bg,var(--os-dashboard-ink))!important;
  color:var(--ds-add-action-text,var(--os-dashboard-paper))!important;
  box-shadow:none!important;
  font:500 13px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#content-daysheet .dashboard-daysheet-grid{
  max-width:none!important;
  padding:0!important;
}
#content-daysheet .dashboard-daysheet-card{
  background:var(--ds-card-bg,var(--os-dashboard-surface))!important;
  border:1px solid var(--ds-card-border,color-mix(in srgb,var(--os-dashboard-ink) 8%,transparent))!important;
  border-radius:16px!important;
  box-shadow:0 1px 0 rgba(255,255,255,0.5) inset,
             0 1px 2px rgba(31,27,22,0.04),
             0 20px 40px -28px rgba(31,27,22,0.18)!important;
  overflow:hidden!important;
}
#ds-table{
  table-layout:fixed!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  background:var(--ds-card-bg,var(--os-dashboard-surface))!important;
}
#ds-table col.ds-col-time{width:84px!important;}
#ds-table col.ds-col-patient{width:200px!important;}
#ds-table col.ds-col-status{width:128px!important;}
#ds-table col.ds-col-reason{width:auto!important;}
#ds-table col.ds-col-testing{width:180px!important;}
#ds-table col.ds-col-tasks{width:160px!important;}
#ds-table col.ds-col-encounter{width:170px!important;}
#ds-table col.ds-col-edit{width:74px!important;}
#ds-table thead tr{
  background:var(--ds-table-header-bg,var(--os-dashboard-header-footer-bg))!important;
}
#ds-table thead th{
  padding:14px 18px!important;
  text-align:left!important;
  font:600 10.5px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.1em!important;
  text-transform:uppercase!important;
  color:var(--ds-table-header-text,var(--os-dashboard-muted))!important;
  background:var(--ds-table-header-bg,var(--os-dashboard-header-footer-bg))!important;
  border-bottom:1px solid var(--ds-table-header-rule,color-mix(in srgb,var(--os-dashboard-ink) 10%,transparent))!important;
  white-space:nowrap!important;
}
#ds-table thead th:first-child{
  padding-left:24px!important;
}
#ds-table thead th:nth-child(6){
  text-align:center!important;
}
#ds-table thead th:last-child{
  text-align:right!important;
}
#ds-body tr,
#ds-body tr:not(.dashboard-footer-row):nth-child(odd) td,
#ds-body tr:not(.dashboard-footer-row):nth-child(even) td{
  background:var(--os-dashboard-surface)!important;
}
#ds-body tr:not(.dashboard-footer-row):hover td{
  background:var(--ds-row-hover-bg,var(--os-dashboard-row-hover-bg))!important;
}
#ds-body tr:not(.dashboard-footer-row) td{
  padding:20px 18px!important;
  text-align:left!important;
  vertical-align:middle!important;
  border-bottom:1px solid var(--os-dashboard-line-soft)!important;
  background:var(--ds-row-bg,var(--os-dashboard-surface))!important;
  color:var(--ds-row-text,var(--os-dashboard-ink))!important;
}
#ds-body tr:not(.dashboard-footer-row) td:first-child{
  padding-left:24px!important;
}
#ds-body tr:not(.dashboard-footer-row) td:last-child{
  padding-right:24px!important;
  text-align:right!important;
}
.dashboard-time{
  font-family:var(--display,var(--serif,Georgia,serif))!important;
  font-size:22px!important;
  font-weight:500!important;
  line-height:1.1!important;
  letter-spacing:0!important;
  color:var(--ds-time-hour-text,var(--os-dashboard-ink))!important;
  white-space:nowrap!important;
}
.dashboard-patient-name{
  margin:0 0 4px!important;
  font-size:14.5px!important;
  font-weight:600!important;
  line-height:1.2!important;
  color:var(--ds-row-text,var(--os-dashboard-ink))!important;
}
.dashboard-patient-meta{
  justify-content:center!important;
  gap:10px!important;
  font:500 10.5px/1.2 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.04em!important;
  color:var(--ds-meta-value-text,var(--os-dashboard-faint))!important;
}
.dashboard-status-toggle{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:5px 11px 5px 9px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--ds-status-empty-bg,color-mix(in srgb,var(--ink,#1F1B16) 6%,var(--surface,#FAF4E8)))!important;
  color:var(--ds-status-empty-text,var(--faint,#A89782))!important;
  font:600 11.5px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
/* Status pill dot — 7px circle, colour bound per variant below. */
.dashboard-status-toggle::before{
  content:""!important;
  display:inline-block!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:var(--ds-status-empty-dot,var(--faint,#A89782))!important;
  flex:0 0 auto!important;
}
.dashboard-status-toggle:focus-visible{
  outline:2px solid color-mix(in srgb,var(--os-dashboard-accent) 28%,transparent)!important;
  outline-offset:2px!important;
  text-decoration:none!important;
}
.dashboard-status-checked-in{
  background:var(--ds-status-checkedin-bg,color-mix(in srgb,var(--state-followup,#3D5F87) 14%,var(--surface,#FAF4E8)))!important;
  color:var(--ds-status-checkedin-text,var(--state-followup,#3D5F87))!important;
}
.dashboard-status-checked-in::before{
  background:var(--ds-status-checkedin-dot,var(--state-followup,#3D5F87))!important;
}
.dashboard-status-testing{
  background:var(--ds-status-testing-bg,color-mix(in srgb,var(--state-testing,#A8872D) 16%,var(--surface,#FAF4E8)))!important;
  color:var(--ds-status-testing-text,var(--state-testing,#A8872D))!important;
}
.dashboard-status-testing::before{
  background:var(--ds-status-testing-dot,var(--state-testing,#A8872D))!important;
}
.dashboard-status-being-seen{
  background:var(--ds-status-inroom-bg,color-mix(in srgb,var(--state-inroom,#2F7C8A) 14%,var(--surface,#FAF4E8)))!important;
  color:var(--ds-status-inroom-text,var(--state-inroom,#2F7C8A))!important;
}
.dashboard-status-being-seen::before{
  background:var(--ds-status-inroom-dot,var(--state-inroom,#2F7C8A))!important;
}
.dashboard-status-checked-out{
  background:var(--ds-status-complete-bg,color-mix(in srgb,var(--success,#5C7A5B) 14%,var(--surface,#FAF4E8)))!important;
  color:var(--ds-status-complete-text,var(--success,#5C7A5B))!important;
}
.dashboard-status-checked-out::before{
  background:var(--ds-status-complete-dot,var(--success,#5C7A5B))!important;
}
.dashboard-status-no-show{
  background:var(--ds-status-noshow-bg,color-mix(in srgb,var(--ink,#1F1B16) 6%,var(--surface,#FAF4E8)))!important;
  color:var(--ds-status-noshow-text,var(--muted,#7A6D5C))!important;
  text-decoration:none!important;
}
.dashboard-status-no-show::before{
  background:var(--ds-status-noshow-dot,var(--faint,#A89782))!important;
}
.dashboard-reason-wrap{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:6px!important;
  min-width:0!important;
}
.dashboard-appointment-type-text{
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  padding:3px 7px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--ds-type-pill-bg,var(--os-dashboard-accent-soft))!important;
  color:var(--ds-type-pill-text,var(--os-dashboard-accent-ink))!important;
  font:600 10px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}
.dashboard-reason-text{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  color:var(--ds-row-muted-text,var(--os-dashboard-muted))!important;
  font:500 13.5px/1.35 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.dashboard-testing-list{
  justify-content:flex-start!important;
  gap:6px!important;
}
.dashboard-testing-item{
  display:inline-flex!important;
  align-items:center!important;
  min-height:22px!important;
  padding:4px 8px!important;
  border:0!important;
  border-radius:6px!important;
  background:var(--ds-test-chip-bg,color-mix(in srgb,var(--os-dashboard-ink) 5%,var(--os-dashboard-surface)))!important;
  color:var(--ds-test-chip-text,var(--os-dashboard-ink))!important;
  font:500 11.5px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
}
.dashboard-testing-empty{
  color:var(--ds-row-faint-text,var(--os-dashboard-faint))!important;
  font:500 12px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.dashboard-tasks{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:6px!important;
  align-items:start!important;
  justify-items:center!important;
}
.dashboard-task{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:5px!important;
  min-width:0!important;
}
.dashboard-task-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:22px!important;
  height:22px!important;
  max-width:44px!important;
  padding:0 6px!important;
  overflow:hidden!important;
  border:1px solid var(--ds-test-chip-border,transparent)!important;
  border-radius:999px!important;
  background:var(--ds-task-add-bg,color-mix(in srgb,var(--os-dashboard-ink) 8%,transparent))!important;
  color:var(--ds-task-add-text,var(--os-dashboard-muted))!important;
  box-shadow:none!important;
  font:600 10.5px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  white-space:nowrap!important;
  text-overflow:clip!important;
}
.dashboard-task-label{
  color:var(--ds-task-caption-text,var(--os-dashboard-faint))!important;
  font:600 9px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.06em!important;
  text-transform:uppercase!important;
}
/* ─── Task chips — COLUMN-DRIVEN baseline (v4) ──────────────────
 * Lower-specificity (no #content-daysheet) mirror of the column rules
 * in component-appearance.css. Provides correct baseline colours
 * outside the Day Sheet content host (e.g. Encounter context strip,
 * future widget surfaces). The column → role mapping is:
 *
 *   SURVEY  → sent    (accent-soft + accent-ink)
 *   FILES   → add     (ink 8% + muted)
 *   BILLING → pending (warning 16% + warning — amber)
 *   F/U     → needed  (info 14% + info — blue)
 * ─────────────────────────────────────────────────────────────── */

/* SURVEY column — sent. */
.dashboard-task-survey .dashboard-survey-action,
.dashboard-survey-status,
.dashboard-survey-status-completed,
.dashboard-survey-status-sent,
.dashboard-survey-status-in-person,
.dashboard-survey-status-none{
  background:var(--ds-task-sent-bg,var(--accent-soft,#F1DED4))!important;
  color:var(--ds-task-sent-text,var(--accent-ink,#8E3A26))!important;
  opacity:1!important;
}
.dashboard-task-survey .dashboard-survey-control{
  background:transparent!important;
}

/* FILES column — add. */
.dashboard-task-files .dashboard-task-badge{
  background:var(--ds-task-add-bg,color-mix(in srgb,var(--ink,#1F1B16) 8%,transparent))!important;
  color:var(--ds-task-add-text,var(--muted,#7A6D5C))!important;
  opacity:1!important;
}

/* BILLING column — pending (amber). */
.dashboard-task-billing .dashboard-task-badge,
.dashboard-billing-status,
.dashboard-billing-status-submitted,
.dashboard-billing-status-pending,
.dashboard-billing-status-empty{
  background:var(--ds-task-pending-bg,color-mix(in srgb,var(--warning,#A57225) 16%,transparent))!important;
  color:var(--ds-task-pending-text,var(--warning,#A57225))!important;
  opacity:1!important;
}

/* F/U column — needed (blue). */
.dashboard-task-followup .dashboard-task-badge,
.dashboard-followup-status,
.dashboard-followup-status-book,
.dashboard-followup-status-booked,
.dashboard-followup-status-pending,
.dashboard-followup-status-none{
  background:var(--ds-task-needed-bg,color-mix(in srgb,var(--info,#3D5F87) 14%,transparent))!important;
  color:var(--ds-task-needed-text,var(--info,#3D5F87))!important;
  opacity:1!important;
}
.dashboard-followup-status-book,
.dashboard-followup-status-booked{
  background:var(--ds-followup-book-bg,var(--ds-encounter-view-solid-bg,var(--info,#3D5F87)))!important;
  color:var(--ds-followup-book-text,var(--ds-encounter-view-solid-text,var(--surface,#FAF4E8)))!important;
}
.dashboard-files-action.dashboard-task-badge{
  min-height:22px!important;
  min-width:22px!important;
  padding:0!important;
  background:var(--ds-task-add-bg,color-mix(in srgb,var(--ink,#1F1B16) 8%,transparent))!important;
  color:var(--ds-task-add-text,var(--muted,#7A6D5C))!important;
  border-color:transparent!important;
  cursor:pointer!important;
}
.dashboard-encounter-cell{
  text-align:center!important;
}
.dashboard-start-encounter-btn{
  min-height:auto!important;
  padding:10px 15px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--ds-encounter-start-bg,var(--os-dashboard-ink))!important;
  color:var(--ds-encounter-start-text,var(--os-dashboard-paper))!important;
  box-shadow:none!important;
  font:500 12.5px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.dashboard-start-encounter-btn:hover{
  background:var(--ds-encounter-start-hover-bg,color-mix(in srgb,var(--os-dashboard-ink) 86%,var(--os-dashboard-accent)))!important;
}
#content-daysheet #ds-add-patient-action:hover{
  background:var(--ds-add-action-hover-bg,color-mix(in srgb,var(--os-dashboard-ink) 90%,var(--os-dashboard-surface)))!important;
}
.dashboard-footer-add-patient-btn:hover{
  background:var(--ds-row-hover-bg,var(--os-dashboard-row-hover-bg))!important;
}
.dashboard-edit-row{
  display:flex!important;
  justify-content:flex-end!important;
  gap:4px!important;
}
.dashboard-edit-appointment-btn,
.dashboard-remove-appointment-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:30px!important;
  min-width:30px!important;
  height:30px!important;
  min-height:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--ds-row-icon-bg,transparent)!important;
  color:var(--ds-row-icon-text,var(--os-dashboard-muted))!important;
  box-shadow:none!important;
  font:600 14px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.dashboard-edit-appointment-btn:hover,
.dashboard-remove-appointment-btn:hover{
  background:var(--ds-row-icon-hover-bg,color-mix(in srgb,var(--os-dashboard-ink) 5%,transparent))!important;
  color:var(--ds-row-icon-hover-text,var(--os-dashboard-ink))!important;
}
.dashboard-remove-appointment-btn:hover{
  color:var(--ds-row-icon-danger-hover-text,var(--os-dashboard-danger))!important;
  background:var(--ds-row-icon-danger-hover-bg,color-mix(in srgb,var(--os-dashboard-danger) 10%,transparent))!important;
}
#ds-body .dashboard-footer-cell{
  padding:0!important;
  border-top:1px solid var(--ds-footer-rule,color-mix(in srgb,var(--os-dashboard-ink) 10%,transparent))!important;
  background:var(--ds-footer-bg,var(--os-dashboard-header-footer-bg))!important;
}
.dashboard-day-footer{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:24px!important;
  min-height:64px!important;
  padding:18px 24px!important;
}
.dashboard-day-stats{
  display:flex!important;
  align-items:center!important;
  gap:28px!important;
}
.dashboard-day-stat{
  display:flex!important;
  align-items:baseline!important;
  gap:8px!important;
}
.dashboard-day-stat-number{
  font-family:var(--display,var(--serif,Georgia,serif))!important;
  font-size:24px!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:0!important;
  color:var(--ds-footer-count-text,var(--os-dashboard-ink))!important;
}
.dashboard-day-stat-number-accent{
  color:var(--ds-footer-total-text,var(--os-dashboard-accent))!important;
}
.dashboard-day-stat-label{
  color:var(--ds-footer-label-text,var(--os-dashboard-muted))!important;
  font:600 10.5px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.1em!important;
  text-transform:uppercase!important;
}
.dashboard-day-stat-rule{
  width:1px!important;
  height:22px!important;
  background:var(--ds-footer-divider,color-mix(in srgb,var(--os-dashboard-ink) 14%,transparent))!important;
}
.dashboard-footer-add-patient-btn{
  position:absolute!important;
  right:24px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  min-height:auto!important;
  padding:9px 16px!important;
  border:1px solid color-mix(in srgb,var(--os-dashboard-ink) 22%,transparent)!important;
  border-radius:999px!important;
  background:transparent!important;
  color:var(--os-dashboard-ink)!important;
  box-shadow:none!important;
  font:500 12.5px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}

@media (max-width:900px){
  #content-daysheet .dashboard-page-shell{
    padding:26px 18px 44px!important;
  }
  #content-daysheet .workspace-page-header{
    align-items:flex-start!important;
    flex-wrap:wrap!important;
  }
  #content-daysheet .dashboard-title{
    font-size:36px!important;
  }
  #content-daysheet .dashboard-daysheet-card{
    overflow-x:auto!important;
  }
  #ds-table{
    min-width:1040px!important;
  }
}
