/* Component appearance contracts.
 * This layer is the structural receiving surface for design-agent output.
 * App markup should opt into semantic roles here instead of relying on raw
 * element selectors such as "button" or one-off ids.
 */
.os-action{
  appearance:none;
  -webkit-appearance:none;
  font-family:var(--font);
  cursor:pointer;
  text-decoration:none;
  transition:
    color var(--t-fast,0.13s) var(--ease,ease),
    background-color var(--t-fast,0.13s) var(--ease,ease),
    border-color var(--t-fast,0.13s) var(--ease,ease);
}

.os-action-inline{
  display:inline-flex;
  align-items:center;
  gap:var(--os-action-inline-gap,0.45em);
  padding:0!important;
  margin:0;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  color:var(--os-action-inline-color,var(--os-sheet-muted-text,var(--ink-mute,#6e6d69)))!important;
  box-shadow:none!important;
  text-shadow:none!important;
  transform:none!important;
}
.os-action-inline:hover,
.os-action-inline:focus-visible{
  color:var(--os-action-inline-hover-color,var(--os-sheet-text,var(--ink,#1a1a18)))!important;
  background:transparent!important;
  background-image:none!important;
  border-color:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}

.os-icon-inline{
  display:inline-block;
  width:var(--os-icon-inline-size,1em);
  height:var(--os-icon-inline-size,1em);
  flex:0 0 auto;
  color:currentColor;
  vertical-align:var(--os-icon-inline-vertical-align,-0.125em);
}

:root{
  --os-button-shape-radius:8px;
  --os-button-icon-shape-radius:8px;
  --os-button-radius:var(--os-button-shape-radius);
  --os-button-font:var(--font,'Geist',system-ui,sans-serif);
  --os-button-font-size:12.5px;
  --os-button-font-weight:500;
  --os-button-line-height:1;
  --os-button-padding-y:10px;
  --os-button-padding-x:18px;
  --os-button-gap:8px;
  --os-button-primary-bg:var(--app-top-action-bg,var(--os-fixed-action-bg,var(--ink,#1F1B16)));
  --os-button-primary-text:var(--app-top-action-text,var(--os-fixed-action-text,var(--paper,#F4ECDD)));
  --os-button-primary-border:var(--app-top-action-border,var(--os-fixed-action-bg,var(--ink,#1F1B16)));
  --os-button-primary-hover-bg:var(--app-top-action-hover-bg,color-mix(in srgb,var(--os-fixed-action-bg,var(--ink,#1F1B16)) 86%,var(--os-accent-action-bg,var(--accent,#C2553A))));
  --os-button-primary-hover-border:var(--os-button-primary-hover-bg);
  --os-button-secondary-bg:transparent;
  --os-button-secondary-text:var(--ds-row-icon-text,var(--ink,#1F1B16));
  --os-button-secondary-border:var(--ds-row-icon-border,color-mix(in srgb,var(--ink,#1F1B16) 12%,transparent));
  --os-button-secondary-hover-bg:var(--ds-row-icon-hover-bg,color-mix(in srgb,var(--ink,#1F1B16) 5%,transparent));
  --os-button-secondary-hover-border:var(--ds-row-icon-border,color-mix(in srgb,var(--ink,#1F1B16) 12%,transparent));
  --os-button-accent-bg:var(--ds-encounter-resume-bg,var(--os-accent-action-bg,var(--accent,#C2553A)));
  --os-button-accent-text:var(--ds-encounter-resume-text,var(--os-accent-action-text,#fff));
  --os-button-accent-border:var(--ds-encounter-resume-border,var(--os-accent-action-bg,var(--accent,#C2553A)));
  --os-button-destructive-bg:var(--ds-row-icon-bg,transparent);
  --os-button-destructive-text:var(--ds-row-icon-text,color-mix(in srgb,var(--ink,#1F1B16) 62%,transparent));
  --os-button-destructive-border:var(--ds-row-icon-border,color-mix(in srgb,var(--ink,#1F1B16) 12%,transparent));
  --os-button-destructive-hover-bg:var(--ds-row-icon-danger-hover-bg,color-mix(in srgb,var(--state-danger,var(--accent,#C2553A)) 10%,transparent));
  --os-button-destructive-hover-border:var(--ds-row-icon-border,color-mix(in srgb,var(--ink,#1F1B16) 12%,transparent));
  --os-button-success-text:var(--ds-encounter-view-text,var(--success,#5C7A5B));
  --os-button-success-border:var(--ds-encounter-view-border,color-mix(in srgb,var(--success,#5C7A5B) 50%,transparent));
  --os-icon-button-size:30px;
  --os-destructive-icon-action-size:var(--os-icon-button-size);
  --os-destructive-icon-action-radius:var(--os-button-icon-shape-radius);
  --os-destructive-icon-action-bg:var(--os-button-destructive-bg);
  --os-destructive-icon-action-text:var(--os-button-destructive-text);
  --os-destructive-icon-action-border:var(--os-button-destructive-border);
  --os-destructive-icon-action-hover-bg:var(--os-button-destructive-hover-bg);
  --os-destructive-icon-action-hover-border:var(--os-button-destructive-hover-border);
  --os-workspace-action-radius:var(--os-button-shape-radius);
  --os-workspace-icon-action-radius:var(--os-destructive-icon-action-radius);
  --os-card-heading-font:var(--mono,'Geist Mono',ui-monospace,monospace);
  --os-card-heading-size:12px;
  --os-card-heading-weight:700;
  --os-card-heading-line-height:1.1;
  --os-card-heading-letter-spacing:0.1em;
  /* App chrome — banner = paper, subnav = surface per active Day Sheet contract.
   * Visual-style overrides (--os-banner-* / --os-subnav-*) still win,
   * so soft-clinic / executive can paint navy/etc. */
  --os-shell-banner-bg:var(--os-banner-bg,var(--app-top-nav-bg,var(--paper,#F4ECDD)));
  --os-shell-banner-text:var(--os-banner-text,var(--app-top-nav-text,var(--ink,#1F1B16)));
  --os-shell-banner-muted-text:var(--os-banner-muted-text,var(--app-top-nav-text,color-mix(in srgb,var(--ink,#1F1B16) 55%,transparent)));
  --os-shell-banner-active-bg:var(--os-banner-active-bg,var(--app-top-nav-active-bg,color-mix(in srgb,var(--ink,#1F1B16) 10%,transparent)));
  --os-shell-banner-border:var(--os-banner-border,var(--app-top-nav-rule,color-mix(in srgb,var(--ink,#1F1B16) 6%,transparent)));
  --os-shell-subnav-bg:var(--os-subnav-bg,var(--app-subnav-bg,var(--surface,#FAF4E8)));
  --os-shell-subnav-text:var(--os-subnav-text,var(--app-subnav-text,color-mix(in srgb,var(--ink,#1F1B16) 60%,transparent)));
  --os-shell-subnav-active-bg:var(--os-subnav-active-bg,var(--app-subnav-active-bg,transparent));
  --os-shell-subnav-active-text:var(--os-subnav-active-text,var(--app-subnav-active-text,var(--accent,#C2553A)));
  --os-shell-subnav-border:var(--os-subnav-border,var(--app-subnav-rule,color-mix(in srgb,var(--ink,#1F1B16) 6%,transparent)));
}

.os-date-action,
#ds-calendar-btn.os-date-action{
  width:auto!important;
  height:auto!important;
  gap:var(--os-action-inline-gap,0.45em)!important;
  font-size:var(--os-date-action-font-size,14px)!important;
  font-weight:var(--os-date-action-font-weight,500)!important;
  line-height:var(--os-date-action-line-height,1.2)!important;
  justify-content:flex-start!important;
}
.os-date-action svg,
#ds-calendar-btn.os-date-action svg{
  display:inline-block;
  width:var(--os-icon-inline-size,1em);
  height:var(--os-icon-inline-size,1em);
  vertical-align:var(--os-icon-inline-vertical-align,-0.125em);
}
.os-calendar-glyph{
  stroke-width:1.6;
}

.dashboard-time{
  display:inline-flex!important;
  align-items:baseline!important;
  gap:4px!important;
  font-family:var(--display,'Newsreader',Georgia,serif)!important;
  font-size:22px!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:-0.02em!important;
  color:var(--ink,#1F1B16)!important;
  white-space:nowrap!important;
}
.dashboard-time-main{
  font:inherit!important;
  letter-spacing:inherit!important;
}
.dashboard-time-meridiem{
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:10.5px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:0!important;
  color:var(--muted,#7A6D5C)!important;
  text-transform:lowercase!important;
}
.dashboard-patient-cell{
  text-align:center!important;
}
.dashboard-patient-name{
  margin:0 0 4px!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:14.5px!important;
  font-weight:600!important;
  line-height:1.2!important;
  color:var(--ink,#1F1B16)!important;
}
.dashboard-patient-meta{
  justify-content:flex-start!important;
  gap:6px!important;
  font:500 10.5px/1.2 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.04em!important;
  color:var(--faint,#A89782)!important;
}
.dashboard-patient-meta-label{
  font-family:var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  font-size:10.5px!important;
  font-weight:600!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
  color:var(--muted,#7A6D5C)!important;
}
.dashboard-patient-meta-value{
  font-family:var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  font-size:10.5px!important;
  font-weight:500!important;
  letter-spacing:0.04em!important;
  color:var(--faint,#A89782)!important;
}

.os-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--os-button-gap);
  min-height:auto;
  border-radius:var(--os-button-radius);
  padding:var(--os-button-padding-y) var(--os-button-padding-x);
  font-family:var(--os-button-font);
  font-size:var(--os-button-font-size);
  font-weight:var(--os-button-font-weight);
  line-height:var(--os-button-line-height);
  letter-spacing:0;
  background-image:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
  transform:none!important;
}

.os-button-light,
#encounter-save-btn.os-button-light,
#ds-add-pt-appt.os-button-light{
  color:var(--os-button-secondary-text)!important;
  background:var(--os-button-secondary-bg)!important;
  border:1px solid var(--os-button-secondary-border)!important;
}
.os-button-light:hover,
.os-button-light:focus-visible,
#encounter-save-btn.os-button-light:hover,
#ds-add-pt-appt.os-button-light:hover{
  color:var(--os-button-secondary-text)!important;
  background:var(--os-button-secondary-hover-bg)!important;
  border-color:var(--os-button-secondary-hover-border)!important;
}

.os-button-dark,
#btn-logout-top.os-button-dark,
#ds-back-btn.os-button-dark{
  color:var(--os-button-primary-text)!important;
  background:var(--os-button-primary-bg)!important;
  border:1px solid var(--os-button-primary-border)!important;
}
.os-button-dark:hover,
.os-button-dark:focus-visible,
#btn-logout-top.os-button-dark:hover,
#ds-back-btn.os-button-dark:hover{
  color:var(--os-button-primary-text)!important;
  background:var(--os-button-primary-hover-bg)!important;
  border-color:var(--os-button-primary-hover-border)!important;
}
.ds-add-patient-btn.os-button-light,
.dashboard-start-encounter-btn.os-button-light,
.dashboard-files-action.os-button-light{
  color:var(--os-button-primary-text)!important;
  background:var(--os-button-primary-bg)!important;
  border:1px solid var(--os-button-primary-border)!important;
}
.ds-add-patient-btn.os-button-light:hover,
.ds-add-patient-btn.os-button-light:focus-visible,
.dashboard-start-encounter-btn.os-button-light:hover,
.dashboard-start-encounter-btn.os-button-light:focus-visible,
.dashboard-files-action.os-button-light:hover,
.dashboard-files-action.os-button-light:focus-visible{
  color:var(--os-button-primary-text)!important;
  background:var(--os-button-primary-hover-bg)!important;
  border-color:var(--os-button-primary-hover-border)!important;
}
.patient-modal-actions{
  position:relative!important;
  justify-content:center!important;
}
.patient-modal-actions #patient-modal-delete-btn{
  position:absolute;
  left:18px;
}
.patient-modal-action-row{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.patient-modal-theme-btn{
  min-height:34px!important;
  padding:9px 18px!important;
  border-radius:var(--os-button-radius,8px)!important;
  border:1px solid var(--os-button-accent-border,var(--accent,#C2553A))!important;
  background:var(--os-button-accent-bg,var(--accent,#C2553A))!important;
  background-image:none!important;
  color:var(--os-button-accent-text,#fff)!important;
  box-shadow:none!important;
  transform:none!important;
}
.patient-modal-theme-btn:hover,
.patient-modal-theme-btn:focus-visible{
  background:var(--ds-encounter-resume-hover-bg,color-mix(in srgb,var(--accent,#C2553A) 88%,var(--ink,#1F1B16)))!important;
  border-color:var(--ds-encounter-resume-hover-bg,color-mix(in srgb,var(--accent,#C2553A) 88%,var(--ink,#1F1B16)))!important;
  color:var(--os-button-accent-text,#fff)!important;
}
.patient-modal-theme-btn:disabled{
  opacity:0.52!important;
  cursor:not-allowed!important;
  transform:none!important;
}
#patient-modal-overlay{
  z-index:650!important;
}
#patient-modal-overlay .patient-modal-card{
  width:min(860px,calc(100vw - 48px))!important;
  padding:0!important;
  max-height:84vh!important;
}
#patient-modal-overlay .patient-modal-hdr{
  position:relative!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
}
#patient-modal-overlay .patient-modal-hdr #patient-modal-title{
  grid-column:2!important;
  grid-row:1!important;
  margin:0!important;
  padding:0 10px!important;
  min-width:0!important;
  color:var(--surface,#FAF4E8)!important;
  text-align:center!important;
  font:700 15px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
}
#patient-modal-overlay .patient-modal-hdr .workspace-card-viewer-close{
  position:absolute!important;
  top:50%!important;
  right:18px!important;
  grid-column:auto!important;
  transform:translateY(-50%)!important;
}
#patient-modal-overlay .patient-modal-body{
  display:block!important;
  margin:0!important;
  padding:18px!important;
  max-height:calc(84vh - 66px)!important;
  box-sizing:border-box!important;
}
#patient-modal-overlay .patient-modal-body .field:last-of-type{
  margin-bottom:0!important;
}
#patient-modal-overlay .patient-modal-step[hidden]{
  display:none!important;
}
#patient-modal-overlay .patient-modal-field-highlight{
  border-color:var(--os-dashboard-accent,var(--accent,#C2553A))!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--os-dashboard-accent,var(--accent,#C2553A)) 18%,transparent)!important;
  border-radius:8px!important;
  transition:box-shadow .16s,border-color .16s!important;
}
#patient-modal-overlay .field.patient-modal-field-highlight{
  padding:6px!important;
  margin:-6px -6px 6px!important;
  border:1px solid var(--os-dashboard-accent,var(--accent,#C2553A))!important;
}
#patient-modal-overlay .patient-modal-provider-row.patient-modal-field-highlight,
#patient-modal-overlay #patient-modal-tests.patient-modal-field-highlight,
#patient-modal-overlay #patient-modal-form-checklist.patient-modal-field-highlight{
  padding:8px!important;
  border:1px solid var(--os-dashboard-accent,var(--accent,#C2553A))!important;
}
#patient-modal-overlay .patient-modal-required-summary{
  margin:0 0 14px!important;
  color:var(--state-danger,#B33A2E)!important;
  font:600 13px/1.35 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#patient-modal-overlay .patient-modal-required-summary[hidden]{
  display:none!important;
}
#patient-modal-overlay .patient-modal-required-note{
  margin:0 0 12px!important;
  color:var(--text-muted,#7A6D5C)!important;
  font:700 11px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}
#patient-modal-overlay .patient-modal-provider-row{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
#patient-modal-overlay .patient-modal-contact-section{
  margin-bottom:16px!important;
}
#patient-modal-overlay .patient-modal-contact-heading{
  margin:0 0 8px!important;
  color:var(--text-muted,#7A6D5C)!important;
  font:700 11px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}
#patient-modal-overlay .patient-modal-contact-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
#patient-modal-overlay .patient-modal-contact-grid .patient-modal-address-field{
  grid-column:span 2!important;
}
#patient-modal-overlay .patient-modal-section-label-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:8px!important;
}
#patient-modal-overlay .patient-modal-section-label-row .field-label{
  margin-bottom:0!important;
}
#patient-modal-overlay .patient-modal-add-provider,
#patient-modal-overlay .patient-modal-remove-provider{
  min-height:30px!important;
  padding:6px 12px!important;
}
#patient-modal-overlay .patient-modal-add-provider{
  border-color:var(--os-button-accent-border,var(--accent,#C2553A))!important;
  background:var(--os-button-accent-bg,var(--accent,#C2553A))!important;
  color:var(--os-button-accent-text,#fff)!important;
}
#patient-modal-overlay .patient-modal-add-provider:hover,
#patient-modal-overlay .patient-modal-add-provider:focus-visible{
  background:var(--ds-encounter-resume-hover-bg,color-mix(in srgb,var(--accent,#C2553A) 88%,var(--ink,#1F1B16)))!important;
  border-color:var(--ds-encounter-resume-hover-bg,color-mix(in srgb,var(--accent,#C2553A) 88%,var(--ink,#1F1B16)))!important;
  color:var(--os-button-accent-text,#fff)!important;
}
#patient-modal-overlay .patient-modal-secondary-btn{
  border-color:var(--os-button-secondary-border,color-mix(in srgb,var(--ink,#1F1B16) 12%,transparent))!important;
  background:var(--os-button-secondary-bg,transparent)!important;
  color:var(--os-button-secondary-text,var(--ink,#1F1B16))!important;
}
#patient-modal-overlay .patient-modal-secondary-btn:hover,
#patient-modal-overlay .patient-modal-secondary-btn:focus-visible{
  border-color:var(--os-button-secondary-hover-border,color-mix(in srgb,var(--ink,#1F1B16) 12%,transparent))!important;
  background:var(--os-button-secondary-hover-bg,color-mix(in srgb,var(--ink,#1F1B16) 5%,transparent))!important;
  color:var(--os-button-secondary-text,var(--ink,#1F1B16))!important;
}
#patient-modal-overlay .patient-modal-associated-providers{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
}
#patient-modal-overlay .patient-modal-associated-provider-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:end!important;
}
#patient-modal-overlay .patient-modal-provider-empty{
  color:var(--muted,#7A6D5C)!important;
  font:500 12px/1.35 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#patient-modal-overlay .patient-modal-review-summary{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
#patient-modal-overlay .patient-modal-review-row{
  min-height:46px!important;
  padding:9px 11px!important;
  border:1px solid color-mix(in srgb,var(--ink,#1F1B16) 10%,transparent)!important;
  border-radius:8px!important;
  background:color-mix(in srgb,var(--surface,#FAF4E8) 78%,var(--paper,#F4ECDD))!important;
  box-sizing:border-box!important;
}
#patient-modal-overlay .patient-modal-review-row span,
#patient-modal-overlay .patient-modal-review-row strong{
  display:block!important;
}
#patient-modal-overlay .patient-modal-review-row span{
  margin-bottom:4px!important;
  color:var(--text-muted,#7A6D5C)!important;
  font:700 10px/1.15 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}
#patient-modal-overlay .patient-modal-review-row strong{
  color:var(--ink,#1F1B16)!important;
  font:600 12.5px/1.3 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  overflow-wrap:anywhere!important;
}
#patient-modal-overlay .patient-modal-forms-grid{
  display:grid!important;
  grid-template-columns:190px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:end!important;
  margin-bottom:8px!important;
}
#patient-modal-overlay .patient-modal-form-type{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
#patient-modal-overlay .patient-modal-form-type span{
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
  color:var(--text-muted,#7A6D5C)!important;
}
#patient-modal-overlay .patient-modal-selected-forms{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0 0 8px!important;
}
#patient-modal-overlay .patient-modal-selected-form-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:26px!important;
  padding:3px 8px!important;
  border:1px solid color-mix(in srgb,var(--accent,#C2553A) 26%,transparent)!important;
  border-radius:8px!important;
  background:color-mix(in srgb,var(--accent-soft,#F1DED4) 52%,var(--surface,#FAF4E8))!important;
  color:var(--ink,#1F1B16)!important;
  font:600 12px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#patient-modal-overlay .patient-modal-selected-form-clear{
  width:18px!important;
  height:18px!important;
  padding:0!important;
  border:0!important;
  border-radius:6px!important;
  background:transparent!important;
  color:var(--accent,#C2553A)!important;
  cursor:pointer!important;
  font:700 13px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#patient-modal-overlay .patient-modal-form-checklist{
  max-height:180px!important;
  overflow:auto!important;
  border:1px solid var(--border-md,color-mix(in srgb,var(--ink,#1F1B16) 14%,transparent))!important;
  border-radius:8px!important;
  background:var(--surface,#FAF4E8)!important;
}
#patient-modal-overlay .patient-modal-form-row{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  justify-content:flex-start!important;
  padding:7px 12px!important;
  border-bottom:1px solid color-mix(in srgb,var(--ink,#1F1B16) 7%,transparent)!important;
  cursor:pointer!important;
}
#patient-modal-overlay .patient-modal-form-row input[type="checkbox"]{
  width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
  margin:0!important;
  padding:0!important;
  cursor:pointer!important;
}
#patient-modal-overlay .patient-modal-form-row:last-child{
  border-bottom:0!important;
}
#patient-modal-overlay .patient-modal-form-row-name{
  flex:1!important;
  min-width:0!important;
  color:var(--ink,#1F1B16)!important;
  font:500 12.5px/1.25 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#patient-modal-overlay .patient-modal-form-added{
  color:var(--green,var(--state-ok,#5C7A5B))!important;
  font:700 9.5px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#patient-modal-overlay .patient-modal-form-empty{
  padding:8px 10px!important;
  color:var(--muted,#7A6D5C)!important;
  font:500 12px/1.35 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#patient-modal-overlay .patient-modal-testing-list{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
}
#patient-modal-overlay .patient-modal-testing-list .addon-btn.active{
  background:var(--green-soft,color-mix(in srgb,var(--state-ok,#5C7A5B) 16%,var(--surface,#FAF4E8)))!important;
  border-color:color-mix(in srgb,var(--state-ok,#5C7A5B) 42%,transparent)!important;
  color:var(--green,var(--state-ok,#5C7A5B))!important;
}
.patient-modal-exit-confirm-overlay{
  position:fixed;
  inset:0;
  z-index:760;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:color-mix(in srgb,var(--ink,#1F1B16) 36%,transparent);
}
.patient-modal-exit-confirm-overlay.open{
  display:flex;
}
.patient-modal-exit-confirm-card{
  width:min(380px,calc(100vw - 48px));
  border:1px solid color-mix(in srgb,var(--accent,#C2553A) 24%,transparent);
  border-radius:8px;
  background:var(--surface,#FAF4E8);
  box-shadow:0 18px 44px color-mix(in srgb,var(--ink,#1F1B16) 18%,transparent);
  padding:22px;
}
.patient-modal-exit-confirm-title{
  margin:0 0 18px;
  color:var(--ink,#1F1B16);
  font:700 18px/1.25 var(--font,var(--sans-paper,system-ui,sans-serif));
  text-align:center;
}
.patient-modal-exit-confirm-actions{
  display:flex;
  justify-content:center;
  gap:10px;
}
@media (max-width:720px){
  #patient-modal-overlay .patient-modal-provider-row,
  #patient-modal-overlay .patient-modal-contact-grid,
  #patient-modal-overlay .patient-modal-review-summary,
  #patient-modal-overlay .patient-modal-forms-grid,
  #patient-modal-overlay .patient-modal-associated-provider-row{
    grid-template-columns:1fr!important;
  }
  #patient-modal-overlay .patient-modal-contact-grid .patient-modal-address-field{
    grid-column:auto!important;
  }
}
.encounter-btn.resume,
.dashboard-start-encounter-btn.resume{
  color:var(--os-button-accent-text)!important;
  background:var(--os-button-accent-bg)!important;
  border-color:var(--os-button-accent-border)!important;
}
.encounter-btn.done,
.dashboard-start-encounter-btn.done{
  color:var(--os-button-success-text)!important;
  background:transparent!important;
  border-color:var(--os-button-success-border)!important;
}
/* Dashboard row action buttons — pencil (edit) + X (remove).
 * The destructive icon action contract lives in the root variables above and
 * is reused by inbox X buttons. Themes alter the contract by overriding those
 * variables, not by restyling each button independently. */
.dashboard-edit-appointment-btn.os-button-light,
.dashboard-remove-appointment-btn.os-button-dark{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:var(--os-destructive-icon-action-size,var(--os-icon-button-size))!important;
  min-width:var(--os-destructive-icon-action-size,var(--os-icon-button-size))!important;
  height:var(--os-destructive-icon-action-size,var(--os-icon-button-size))!important;
  min-height:var(--os-destructive-icon-action-size,var(--os-icon-button-size))!important;
  padding:0!important;
  line-height:1!important;
  border-radius:var(--os-destructive-icon-action-radius,var(--os-button-icon-shape-radius,8px))!important;
  color:transparent!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
}
/* Day-sheet row × — solid ink chip per v4 contract (Option B). */
.dashboard-remove-appointment-btn.os-button-dark{
  background:var(--ds-row-delete-bg,var(--ink,#1f1b16))!important;
  border:1px solid var(--ds-row-delete-border,var(--ink,#1f1b16))!important;
}
/* Day-sheet row ✎ — outlined light chip per v4 contract (Option B). */
.dashboard-edit-appointment-btn.os-button-light{
  background:var(--ds-row-edit-bg,var(--surface,#FAF4E8))!important;
  border:1px solid var(--ds-row-edit-border,color-mix(in srgb,var(--ink,#1f1b16) 22%,transparent))!important;
}
.dashboard-edit-appointment-btn.os-button-light::before,
.dashboard-remove-appointment-btn.os-button-dark::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  -webkit-mask-position:center!important;
  mask-position:center!important;
  -webkit-mask-repeat:no-repeat!important;
  mask-repeat:no-repeat!important;
  -webkit-mask-size:18px 18px!important;
  mask-size:18px 18px!important;
}
/* × glyph — paper-coloured cross over solid ink chip. */
.dashboard-remove-appointment-btn.os-button-dark::before{
  background:var(--ds-row-delete-glyph,var(--paper,#F4ECDD))!important;
  -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3.5' stroke-linecap='round'><line x1='6' y1='6' x2='18' y2='18'/><line x1='18' y1='6' x2='6' y2='18'/></svg>")!important;
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3.5' stroke-linecap='round'><line x1='6' y1='6' x2='18' y2='18'/><line x1='18' y1='6' x2='6' y2='18'/></svg>")!important;
}
/* ✎ glyph — ink-coloured pencil over surface chip. */
.dashboard-edit-appointment-btn.os-button-light::before{
  background:var(--ds-row-edit-glyph,var(--ink,#1f1b16))!important;
  -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M14.2 4.6l5.2 5.2L8.8 20.4 3.6 20.4 3.6 15.2 14.2 4.6z'/><line x1='13' y1='5.8' x2='18.2' y2='11'/></svg>")!important;
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M14.2 4.6l5.2 5.2L8.8 20.4 3.6 20.4 3.6 15.2 14.2 4.6z'/><line x1='13' y1='5.8' x2='18.2' y2='11'/></svg>")!important;
}
/* × hover — solid danger. */
.dashboard-remove-appointment-btn.os-button-dark:hover,
.dashboard-remove-appointment-btn.os-button-dark:focus-visible{
  background:var(--ds-row-delete-hover-bg,var(--state-danger,#B33A2E))!important;
  border-color:var(--ds-row-delete-hover-border,var(--state-danger,#B33A2E))!important;
}
/* ✎ hover — slightly emphasised outline + faint ink wash. */
.dashboard-edit-appointment-btn.os-button-light:hover,
.dashboard-edit-appointment-btn.os-button-light:focus-visible{
  background:var(--ds-row-edit-hover-bg,color-mix(in srgb,var(--ink,#1f1b16) 5%,var(--surface,#FAF4E8)))!important;
  border-color:var(--ds-row-edit-hover-border,color-mix(in srgb,var(--ink,#1f1b16) 35%,transparent))!important;
}
.dashboard-remove-appointment-btn.os-button-dark:hover::before,
.dashboard-remove-appointment-btn.os-button-dark:focus-visible::before{
  background:var(--ds-row-delete-hover-glyph,var(--paper,#F4ECDD))!important;
}
.dashboard-edit-appointment-btn.os-button-light:hover::before,
.dashboard-edit-appointment-btn.os-button-light:focus-visible::before{
  background:var(--ds-row-edit-hover-glyph,var(--ink,#1f1b16))!important;
}
.subtab-nav-arrow.os-button-dark,
.subtab-nav-arrow.os-button-dark:hover,
.subtab-nav-arrow.os-button-dark:focus-visible{
  color:var(--os-component-content-bg,var(--surface,#faf9f5))!important;
  background:var(--ink-link,var(--blue,#d97757))!important;
  background-image:none!important;
  border-color:var(--ink-link,var(--blue,#d97757))!important;
}

.os-entry-text{
  display:block;
  width:100%;
  min-height:var(--os-entry-text-min-height,54px)!important;
  padding:var(--os-entry-text-padding,7px 9px)!important;
  border:1px solid var(--os-input-border,var(--border-md,#d9d3c4))!important;
  border-radius:var(--os-entry-text-radius,var(--radius,7px))!important;
  background:var(--os-input-bg,var(--surface,#faf9f5))!important;
  color:var(--os-input-text,var(--text,#1f1e1d))!important;
  font-family:var(--os-entry-text-font,var(--font))!important;
  font-size:var(--os-entry-text-font-size,12.5px)!important;
  font-weight:var(--os-entry-text-font-weight,500)!important;
  line-height:var(--os-entry-text-line-height,1.45)!important;
  letter-spacing:var(--os-entry-text-letter-spacing,0)!important;
  resize:vertical;
  outline:none;
  box-shadow:none;
}
.os-entry-text::placeholder{
  color:var(--os-input-placeholder,var(--text-faint,#a39d8c));
}
.os-entry-text:focus{
  border-color:var(--os-accent,var(--ink-link,var(--blue,#d97757)))!important;
  background:var(--os-component-content-bg,var(--surface,#faf9f5))!important;
  box-shadow:var(--os-focus-ring,var(--ring-focus,0 0 0 3px rgba(217,119,87,0.18)))!important;
}

/* Claude token spec final layer. This file loads last, so these selectors keep
   shared tokens from being overridden by older screen-specific CSS. */
html,
body,
.app{
  background:var(--paper)!important;
  color:var(--ink)!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
}
.topbar,
.topbar-strip{
  background:var(--os-shell-banner-bg,var(--os-banner-bg,var(--ink,#1F1B16)))!important;
  background-image:none!important;
  border-bottom:1px solid var(--os-shell-banner-border,var(--os-banner-border,color-mix(in srgb,var(--paper,#F4ECDD) 14%,transparent)))!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.topbar-strip{
  height:auto!important;
  min-height:88px!important;
  padding:18px 40px!important;
  gap:24px!important;
}
.workspace-tabs-row,
.encounter-tabs-row{
  height:auto!important;
  min-height:47px!important;
  padding:6px 40px 0!important;
  background:var(--os-shell-subnav-bg,var(--os-subnav-bg,color-mix(in srgb,var(--ink,#1F1B16) 86%,var(--paper,#F4ECDD))))!important;
  border-top:0!important;
  border-bottom:1px solid var(--os-shell-subnav-border,var(--os-subnav-border,color-mix(in srgb,var(--paper,#F4ECDD) 12%,transparent)))!important;
  box-shadow:none!important;
}
.logo,
.login-logo{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-right:0!important;
}
.topbar .logo[role="button"]{
  cursor:pointer!important;
  border-radius:8px;
  outline:0;
}
.topbar .logo[role="button"]:focus-visible{
  box-shadow:0 0 0 3px var(--os-focus-ring,rgba(217,119,87,0.18));
}
.topbar .logo[role="button"]:active{
  transform:translateY(0)!important;
}
.topbar-strip{
  --topbar-account-button-width:112px;
  --topbar-account-button-min-height:30px;
  --topbar-account-button-padding:10px 18px;
  --topbar-account-button-radius:var(--os-button-shape-radius,8px);
  --topbar-account-button-font:var(--os-button-font,var(--font,'Geist',system-ui,sans-serif));
  --topbar-account-button-font-size:var(--os-button-font-size,12.5px);
  --topbar-account-button-font-weight:var(--os-button-font-weight,500);
  --topbar-account-button-line-height:var(--os-button-line-height,1);
}

.profile-menu{
  position:relative;
  display:none;
  align-items:center;
  flex:0 0 auto;
  z-index:1300;
}
.topbar-patient-search.widget-directory{
  display:none;
  align-items:center;
  flex:0 1 300px;
  min-width:210px;
  max-width:320px;
  position:relative;
  gap:0;
}
body.profile-menu-available:not(.encounter-active) .topbar-strip .topbar-patient-search{
  display:flex;
}
body.encounter-active .topbar-strip .topbar-patient-search{
  display:none;
}
.topbar-patient-search .widget-directory-input{
  flex:1;
  min-width:0;
  width:100%;
  font-family:var(--sans-paper,var(--font));
  font-size:12px;
  color:var(--ink,var(--text));
  padding:6px 10px;
  background:var(--surface,#fff);
  border:1px solid var(--ink-link,var(--blue,#d97757));
  border-radius:8px 0 0 8px;
  outline:none;
  transition:border-color .15s;
}
.topbar-patient-search .widget-directory-input:focus{
  border-color:var(--ink,var(--text));
}
.topbar-patient-search .widget-directory-input::placeholder{
  color:var(--ink-faint,var(--text-faint));
}
.topbar-create-patient-btn{
  flex:0 0 30px;
  width:30px;
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:1px solid var(--ink-link,var(--blue,#d97757));
  border-left:0;
  border-radius:0 8px 8px 0;
  background:var(--ink-link,var(--blue,#d97757));
  color:var(--surface,#fff);
  font:700 18px/1 var(--font,var(--sans-paper,system-ui,sans-serif));
  cursor:pointer;
}
.topbar-create-patient-btn:hover,
.topbar-create-patient-btn:focus-visible{
  background:var(--ink,var(--text));
  border-color:var(--ink,var(--text));
  outline:none;
}
body.profile-menu-available:not(.encounter-active) .topbar-strip .profile-menu{
  display:flex;
}
body:not(.profile-menu-available) .topbar-strip .profile-menu,
body.encounter-active .topbar-strip .profile-menu{
  display:none;
}
.profile-menu-trigger{
  width:var(--topbar-account-button-width)!important;
  min-width:var(--topbar-account-button-width)!important;
  min-height:var(--topbar-account-button-min-height,32px)!important;
  padding:var(--topbar-account-button-padding)!important;
  border:0!important;
  border-radius:var(--topbar-account-button-radius)!important;
  background:var(--profile-menu-bg,var(--ink-link,var(--blue,var(--accent,#C2553A))))!important;
  color:var(--profile-menu-text,var(--os-component-content-bg,var(--surface,#FAF4E8)))!important;
  font-family:var(--topbar-account-button-font)!important;
  font-size:var(--topbar-account-button-font-size)!important;
  font-weight:var(--topbar-account-button-font-weight)!important;
  line-height:var(--topbar-account-button-line-height)!important;
  gap:8px!important;
  transition:background 0.14s var(--ease),border-color 0.14s var(--ease),color 0.14s var(--ease),box-shadow 0.14s var(--ease);
}
.profile-menu-trigger:hover,
.profile-menu-trigger:focus-visible,
.profile-menu.open .profile-menu-trigger{
  background:var(--profile-menu-hover-bg,color-mix(in srgb,var(--ink-link,var(--blue,var(--accent,#C2553A))) 88%,var(--ink,#1F1B16)))!important;
  border-color:transparent!important;
  color:var(--profile-menu-hover-text,var(--os-component-content-bg,var(--surface,#FAF4E8)))!important;
  outline:0;
  box-shadow:0 0 0 3px var(--os-focus-ring,rgba(217,119,87,0.18));
}
.profile-menu-avatar{
  width:20px;
  height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:6px;
  background:var(--profile-menu-avatar-bg,color-mix(in srgb,var(--os-component-content-bg,var(--surface,#FAF4E8)) 82%,var(--ink-link,var(--blue,var(--accent,#C2553A))) 18%));
  color:var(--profile-menu-avatar-text,var(--ink-link,var(--blue,var(--accent,#C2553A))));
  font:700 8px/1 var(--mono,var(--font,system-ui));
  letter-spacing:0.02em;
}
.profile-menu-panel{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  min-width:178px;
  padding:6px;
  border:1px solid var(--profile-menu-panel-border,var(--component-border,var(--line,#D8D0BF)));
  border-radius:8px;
  background:var(--profile-menu-panel-bg,var(--surface,#FAF4E8));
  color:var(--profile-menu-panel-text,var(--ink,#1F1B16));
  box-shadow:0 16px 38px rgba(31,30,29,0.16),0 4px 10px rgba(31,30,29,0.08);
  z-index:1400;
}

#encounter-save-return-btn.encounter-return-arrow,
body.encounter-active #encounter-save-return-btn.encounter-return-arrow{
  width:32px!important;
  min-width:32px!important;
  height:32px!important;
  min-height:32px!important;
  padding:0!important;
  border:1px solid transparent!important;
  border-radius:var(--topbar-account-button-radius,var(--radius,7px))!important;
  background:transparent!important;
  background-image:none!important;
  color:var(--accent,var(--os-swatch-accent,var(--os-logo-word-primary,#C2553A)))!important;
  box-shadow:none!important;
  text-shadow:none!important;
  font:700 24px/1 var(--topbar-account-button-font,var(--font,'Geist',system-ui,sans-serif))!important;
  letter-spacing:0!important;
}

#encounter-save-return-btn.encounter-return-arrow:hover,
#encounter-save-return-btn.encounter-return-arrow:focus-visible,
body.encounter-active #encounter-save-return-btn.encounter-return-arrow:hover,
body.encounter-active #encounter-save-return-btn.encounter-return-arrow:focus-visible{
  background:transparent!important;
  background-image:none!important;
  border-color:var(--accent,var(--os-swatch-accent,var(--os-logo-word-primary,#C2553A)))!important;
  color:var(--accent,var(--os-swatch-accent,var(--os-logo-word-primary,#C2553A)))!important;
  box-shadow:none!important;
  outline:0;
}
.profile-menu-item{
  width:100%;
  min-height:32px;
  display:flex;
  align-items:center;
  padding:0 10px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:var(--profile-menu-panel-text,var(--ink,#1F1B16));
  font:600 12px/1 var(--font,'Geist',system-ui,sans-serif);
  text-align:left;
  cursor:pointer;
}
.profile-menu-item:hover,
.profile-menu-item:focus-visible{
  background:var(--profile-menu-item-hover-bg,color-mix(in srgb,var(--os-swatch-accent,var(--os-logo-word-primary,var(--accent,#C2553A))) 18%,transparent));
  color:var(--profile-menu-item-hover-text,var(--os-logo-word-primary,var(--os-swatch-accent,var(--accent,#C2553A))));
  outline:0;
}
.profile-menu-item-logout{
  color:var(--profile-menu-logout-text,var(--danger,var(--os-swatch-accent,var(--accent,#C2553A))));
}
.logo .eye,
.login-logo .eye{
  width:52px!important;
  height:52px!important;
  flex:0 0 52px!important;
  display:block!important;
}
.topbar .logo .eye > circle:last-child{
  fill:var(--os-logo-word-primary,var(--os-accent,var(--accent,#C2553A)))!important;
}
.wordmark{
  display:inline-flex!important;
  align-items:baseline!important;
  font-family:var(--display,'Newsreader',Georgia,serif)!important;
  font-optical-sizing:auto!important;
  font-size:30px!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:-0.02em!important;
  white-space:nowrap!important;
}
.wordmark-accent{color:var(--os-logo-word-primary,var(--accent))!important;}
.wordmark-ink{color:var(--os-logo-word-secondary,var(--os-shell-banner-muted-text,var(--os-banner-muted-text,var(--ink))))!important;}
.os-logo-lockup,
.logo-divider,
.tb-div{
  display:none!important;
}
.topbar-mode-tabs{
  height:auto!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:0!important;
  background:transparent!important;
}
.tab-btn-mode{
  height:auto!important;
  padding:10px 16px!important;
  border:0!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  color:var(--os-shell-banner-muted-text,var(--os-banner-muted-text,var(--muted)))!important;
  background:transparent!important;
  font:500 13px/1 var(--font,'Geist',system-ui,sans-serif)!important;
  letter-spacing:0!important;
}
#profile-mode-proxy[hidden]{
  display:none!important;
}
.tab-btn-mode:hover{
  color:var(--os-shell-banner-text,var(--os-banner-text,var(--ink)))!important;
  background:var(--os-shell-banner-active-bg,var(--os-banner-active-bg,color-mix(in srgb,var(--paper,#F4ECDD) 10%,transparent)))!important;
}
.tab-btn-mode.active{
  color:var(--os-shell-banner-text,var(--os-banner-text,var(--ink)))!important;
  background:var(--os-shell-banner-active-bg,var(--os-banner-active-bg,color-mix(in srgb,var(--paper,#F4ECDD) 10%,transparent)))!important;
  border:0!important;
  font-weight:600!important;
}
.topbar-tabs-v2,
.encounter-tabs-v2{
  height:auto!important;
  display:flex!important;
  align-items:flex-end!important;
  gap:0!important;
  background:transparent!important;
}
.tab-btn-v2{
  height:auto!important;
  padding:12px 14px!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
  border-radius:0!important;
  color:var(--os-shell-subnav-text,var(--os-subnav-text,var(--muted)))!important;
  background:transparent!important;
  font:500 13px/1 var(--font,'Geist',system-ui,sans-serif)!important;
  letter-spacing:0!important;
}
.tab-btn-v2:hover{
  color:var(--os-shell-subnav-active-text,var(--os-subnav-active-text,var(--ink)))!important;
  background:var(--os-shell-subnav-active-bg,var(--os-subnav-active-bg,transparent))!important;
}
.tab-btn-v2.active{
  color:var(--os-shell-subnav-active-text,var(--os-subnav-active-text,var(--accent)))!important;
  background:var(--os-shell-subnav-active-bg,var(--os-subnav-active-bg,transparent))!important;
  border-bottom-color:var(--os-accent,var(--accent))!important;
  font-weight:600!important;
}
.tab-btn-v2.active::after{
  display:none!important;
}
#btn-logout-top.os-button-dark,
.profile-menu-trigger.os-button,
.topbar-dashboard-back{
  box-sizing:border-box!important;
  width:var(--topbar-account-button-width,112px)!important;
  min-width:var(--topbar-account-button-width,112px)!important;
  height:var(--topbar-account-button-min-height,30px)!important;
  min-height:var(--topbar-account-button-min-height,30px)!important;
  padding:var(--topbar-account-button-padding,10px 18px)!important;
  border:0!important;
  border-radius:var(--topbar-account-button-radius,var(--os-button-shape-radius,8px))!important;
  font-family:var(--topbar-account-button-font,var(--os-button-font,var(--font,'Geist',system-ui,sans-serif)))!important;
  font-size:var(--topbar-account-button-font-size,var(--os-button-font-size,12.5px))!important;
  font-weight:var(--topbar-account-button-font-weight,var(--os-button-font-weight,500))!important;
  line-height:var(--topbar-account-button-line-height,var(--os-button-line-height,1))!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:26px 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;
  min-height:44px!important;
  height:auto!important;
  margin:0 0 28px!important;
  padding:0!important;
  border:0!important;
  background:transparent!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{
  margin:0!important;
  color:var(--ink)!important;
  font-family:var(--display,'Newsreader',Georgia,serif)!important;
  font-optical-sizing:auto!important;
  font-size:44px!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:-0.02em!important;
}
.card,
#content-daysheet .dashboard-daysheet-card,
#tabs-v2-region .inbox-section{
  background:var(--surface)!important;
  border:1px solid color-mix(in srgb,var(--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;
}

/* Workspace card contract.
 * The Dashboard day sheet calendar/table surface is the canonical appearance.
 * New dashboard, inbox, wait-list, billing, and future reusable cards should
 * use these classes instead of inventing separate card chrome.
 */
.os-workspace-card,
#content-daysheet .os-workspace-card,
#tabs-v2-region .os-workspace-card{
  background:var(--surface)!important;
  border:1px solid color-mix(in srgb,var(--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;
}
.os-workspace-card-header,
.inbox-section.os-workspace-card .inbox-section-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:14px!important;
  padding-bottom:10px!important;
  border-bottom:1px solid color-mix(in srgb,var(--ink,#1F1B16) 6%,transparent)!important;
}
.os-workspace-card-title,
.inbox-section.os-workspace-card .notes-tab-hdr{
  margin:0!important;
  color:var(--ink)!important;
  font-family:var(--display,'Newsreader',Georgia,serif)!important;
  font-size:18px!important;
  font-weight:600!important;
  line-height:1.15!important;
  letter-spacing:-0.01em!important;
}
.os-workspace-card-count,
.inbox-section.os-workspace-card .inbox-section-count{
  min-width:24px!important;
  height:22px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:var(--ink-link-soft,var(--blue-soft))!important;
  border:1px solid var(--ink-link,var(--blue))!important;
  color:var(--ink-link,var(--blue))!important;
  font:700 11px/1 var(--sans-paper,var(--font))!important;
}
.os-workspace-card-body{
  min-width:0;
}

/* ── Workspace card visual contract — match Dashboard day sheet card ──────
 * The Dashboard day sheet table card is the source of truth. Inbox, Wait
 * Lists, Billing, and future queue cards reuse the same outer chrome and
 * adopt a soft header band + flat list-row body so nothing reads as a
 * separate card-in-card or boxed row.
 *
 * Selectors duplicate `.os-workspace-card-*` (new shell from
 * `WorkspaceCard.renderCard`) and the legacy `.inbox-section`* markup that
 * Wait Lists / Billing still ship with — both structures share appearance.
 */

/* Outer card: clear any inherited inbox-section padding so the body extends
 * flush to the card edge, like the day sheet table. */
.os-workspace-card,
.inbox-section.os-workspace-card,
#content-daysheet .os-workspace-card,
#tabs-v2-region .os-workspace-card,
#tabs-v2-region .inbox-section.os-workspace-card{
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
  border:1px solid color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 8%,transparent)!important;
  border-radius:16px!important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.55) inset,
    0 1px 2px rgba(31,27,22,0.05),
    0 28px 56px -36px rgba(31,27,22,0.22)!important;
  overflow:hidden!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
}

/* Header band: match the final Dashboard day-sheet thead exactly. */
.os-workspace-card .os-workspace-card-header,
#tabs-v2-region .inbox-section.os-workspace-card .inbox-section-head,
.inbox-section.os-workspace-card .inbox-section-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0!important;
  padding:16px 20px!important;
  min-height:42px!important;
  background:var(--os-dashboard-header-footer-bg,var(--os-component-header-footer-bg,color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 3%,var(--os-dashboard-surface,var(--surface,#FAF4E8)))))!important;
  border-bottom:1px solid color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 10%,transparent)!important;
}

/* Header title: same mono uppercase treatment as Dashboard day-sheet th. */
.os-workspace-card .os-workspace-card-title,
.os-workspace-card .os-workspace-card-header h2,
.inbox-section.os-workspace-card .notes-tab-hdr,
.inbox-section.os-workspace-card .inbox-section-head .notes-tab-hdr{
  margin:0!important;
  padding:0!important;
  font-family:var(--os-card-heading-font)!important;
  font-size:var(--os-card-heading-size)!important;
  font-weight:var(--os-card-heading-weight)!important;
  line-height:var(--os-card-heading-line-height)!important;
  letter-spacing:var(--os-card-heading-letter-spacing)!important;
  text-transform:uppercase!important;
  color:color-mix(in srgb,var(--text-muted,#7A6D5C) 88%,var(--ink,#1F1B16))!important;
}

/* Count badge: solid-ink mini pill (aliased to --app-top-action via
 * --ds-card-count-*). Mirrors the Logout / + Add Patient pill so all
 * three "ink-strong" chrome affordances read as one family. */
.os-workspace-card .os-workspace-card-count,
.inbox-section.os-workspace-card .inbox-section-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:22px!important;
  height:20px!important;
  padding:0 8px!important;
  border:1px solid var(--ds-card-count-border,var(--ink,#1F1B16))!important;
  border-radius:999px!important;
  background:var(--ds-card-count-bg,var(--ink,#1F1B16))!important;
  color:var(--ds-card-count-text,var(--paper,#F4ECDD))!important;
  font:600 10px/1 var(--mono,var(--font,system-ui))!important;
  letter-spacing:0.04em!important;
  text-transform:uppercase!important;
}

.os-workspace-card .os-workspace-card-count,
.inbox-section.os-workspace-card .inbox-section-count,
.billing-claim-mini-card .inbox-section-count{
  min-width:34px!important;
  height:26px!important;
  padding:0 10px!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  box-shadow:none!important;
  font:700 12px/1 var(--font,'Geist',system-ui,sans-serif)!important;
  letter-spacing:0!important;
  text-transform:none!important;
  cursor:pointer!important;
}

html[data-palette="terracotta"]{
  --os-count-zero-info:#3D5F87;
}

html[data-palette="sage"],
html[data-palette="sage-clinic"]{
  --os-count-zero-info:#3B6491;
}

html[data-palette="ink-copper"]{
  --os-count-zero-info:#2A4A7A;
}

html[data-palette="mulberry"]{
  --os-count-zero-info:#46517F;
}

.os-workspace-card .os-workspace-card-count[data-count-state="zero"],
.os-workspace-card .os-workspace-card-count.os-count-zero,
.inbox-section.os-workspace-card .inbox-section-count[data-count-state="zero"],
.inbox-section.os-workspace-card .inbox-section-count.os-count-zero,
.billing-claim-mini-card .inbox-section-count[data-count-state="zero"],
.billing-claim-mini-card .inbox-section-count.os-count-zero{
  background:var(--os-count-bg,var(--ds-followup-book-bg,color-mix(in srgb,var(--state-followup,#3D5F87) 14%,transparent)))!important;
  border-color:var(--os-count-border,color-mix(in srgb,var(--os-count-text,var(--ds-followup-book-text,var(--state-followup,#3D5F87))) 18%,transparent))!important;
  color:var(--os-count-text,var(--ds-followup-book-text,var(--state-followup,#3D5F87)))!important;
}

.os-workspace-card .os-workspace-card-count:hover,
.os-workspace-card .os-workspace-card-count:focus-visible,
.inbox-section.os-workspace-card .inbox-section-count:hover,
.inbox-section.os-workspace-card .inbox-section-count:focus-visible,
.billing-claim-mini-card .inbox-section-count:hover,
.billing-claim-mini-card .inbox-section-count:focus-visible{
  background:color-mix(in srgb,var(--os-count-text,var(--ds-followup-book-text,var(--state-followup,#3D5F87))) 18%,transparent)!important;
  border-color:color-mix(in srgb,var(--os-count-text,var(--ds-followup-book-text,var(--state-followup,#3D5F87))) 24%,transparent)!important;
  color:var(--os-count-text,var(--ds-followup-book-text,var(--state-followup,#3D5F87)))!important;
  outline:0!important;
}

.workspace-card-viewer-overlay{
  z-index:650!important;
}

.workspace-card-viewer-card{
  --workspace-card-viewer-accent:var(--os-accent-action-bg,var(--os-dashboard-accent,var(--accent,#C2553A)));
  position:relative!important;
  width:min(860px,calc(100vw - 48px))!important;
  max-height:84vh!important;
  overflow:hidden!important;
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
  border:2px solid var(--workspace-card-viewer-accent)!important;
}

.workspace-card-viewer-hdr{
  display:grid!important;
  grid-template-columns:minmax(140px,1fr) 34px auto auto 34px minmax(170px,1fr)!important;
  align-items:center!important;
  justify-content:normal!important;
  gap:10px!important;
  padding:16px 18px!important;
  background:var(--workspace-card-viewer-accent)!important;
}

.workspace-card-viewer-hdr #workspace-card-viewer-title,
.note-view-modal-hdr #note-view-modal-title{
  grid-column:3!important;
  grid-row:1!important;
  min-width:0!important;
  margin:0!important;
  padding:0 10px!important;
  text-align:center!important;
  color:var(--surface,#FAF4E8)!important;
}

.workspace-card-viewer-count[hidden]{
  display:none!important;
}

.workspace-card-viewer-count{
  grid-column:4!important;
  grid-row:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  justify-self:start!important;
  width:30px!important;
  min-width:30px!important;
  height:30px!important;
  min-height:30px!important;
  padding:0!important;
  border:1px solid var(--surface,#FAF4E8)!important;
  border-radius:8px!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--workspace-card-viewer-accent)!important;
  font:700 12px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}

.workspace-card-viewer-note-nav[hidden]{
  display:none!important;
}

.workspace-card-viewer-note-nav{
  grid-row:1!important;
  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;
  padding:0!important;
  border:1px solid var(--surface,#FAF4E8)!important;
  border-radius:8px!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--workspace-card-viewer-accent)!important;
  font:700 24px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  cursor:pointer!important;
  box-shadow:none!important;
}

.workspace-card-viewer-note-nav-prev{
  grid-column:2!important;
  justify-self:end!important;
}

.workspace-card-viewer-note-nav-next{
  grid-column:5!important;
  justify-self:start!important;
}

.workspace-card-viewer-note-nav:hover,
.workspace-card-viewer-note-nav:focus-visible{
  background:var(--surface,#FAF4E8)!important;
  border-color:var(--surface,#FAF4E8)!important;
  color:color-mix(in srgb,var(--workspace-card-viewer-accent) 86%,var(--ink,#1F1B16))!important;
  outline:0!important;
}

.workspace-card-viewer-close{
  grid-column:6!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:center!important;
  flex:0 0 auto!important;
  margin:0!important;
}

.workspace-card-viewer-card .workspace-card-viewer-hdr .workspace-card-viewer-close.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark{
  background:var(--surface,#FAF4E8)!important;
  border-color:var(--surface,#FAF4E8)!important;
}

.workspace-card-viewer-card .workspace-card-viewer-hdr .workspace-card-viewer-close.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark::before{
  background:var(--workspace-card-viewer-accent)!important;
}

.workspace-card-viewer-card .workspace-card-viewer-hdr .workspace-card-viewer-close.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark:hover,
.workspace-card-viewer-card .workspace-card-viewer-hdr .workspace-card-viewer-close.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark:focus-visible{
  background:var(--surface,#FAF4E8)!important;
  border-color:var(--surface,#FAF4E8)!important;
}

.workspace-card-viewer-card .workspace-card-viewer-hdr .workspace-card-viewer-close.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark:hover::before,
.workspace-card-viewer-card .workspace-card-viewer-hdr .workspace-card-viewer-close.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark:focus-visible::before{
  background:color-mix(in srgb,var(--workspace-card-viewer-accent) 86%,var(--ink,#1F1B16))!important;
}

.workspace-card-viewer-body{
  margin:0 18px 18px!important;
  max-height:64vh!important;
  overflow:auto!important;
  border:0!important;
  border-radius:0!important;
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
}

.workspace-card-viewer-body .workspace-card-viewer-list{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  padding:0!important;
  margin:0!important;
}

.workspace-card-viewer-body .notes-tab-row,
.workspace-card-viewer-body .incoming-referral-row,
.workspace-card-viewer-body .pending-consult-row,
.workspace-card-viewer-body .update-letter-row,
.workspace-card-viewer-body .outgoing-referral-row,
.workspace-card-viewer-body .test-result-row,
.workspace-card-viewer-body .cataract-waitlist-row,
.workspace-card-viewer-body .upcoming-or-day-row,
.workspace-card-viewer-body .billing-claim-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  padding:14px 20px!important;
  border:0!important;
  border-bottom:1px solid var(--ds-row-rule,color-mix(in srgb,var(--ink,#1F1B16) 6%,transparent))!important;
  border-radius:0!important;
  background:var(--ds-row-bg,var(--surface,#FAF4E8))!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:500 13.5px/1.35 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
}

.workspace-card-viewer-body .notes-tab-row:last-child,
.workspace-card-viewer-body .incoming-referral-row:last-child,
.workspace-card-viewer-body .pending-consult-row:last-child,
.workspace-card-viewer-body .update-letter-row:last-child,
.workspace-card-viewer-body .outgoing-referral-row:last-child,
.workspace-card-viewer-body .test-result-row:last-child,
.workspace-card-viewer-body .cataract-waitlist-row:last-child,
.workspace-card-viewer-body .upcoming-or-day-row:last-child,
.workspace-card-viewer-body .billing-claim-row:last-child{
  border-bottom:0!important;
}

.workspace-card-viewer-body .notes-tab-row-preview,
.workspace-card-viewer-body .incoming-referral-provider,
.workspace-card-viewer-body .incoming-referral-patient,
.workspace-card-viewer-body .incoming-referral-brief-reason,
.workspace-card-viewer-body .pending-consult-grid span,
.workspace-card-viewer-body .notes-tab-row-copy{
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:13.5px!important;
  font-weight:500!important;
  line-height:1.35!important;
  letter-spacing:0!important;
}

.workspace-card-viewer-body .notes-tab-row-meta,
.workspace-card-viewer-body .inbox-patient-meta,
.workspace-card-viewer-body .inbox-patient-separator{
  color:var(--ds-row-muted-text,var(--os-dashboard-muted,var(--muted,#7A6D5C)))!important;
  font:500 10.5px/1.2 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.04em!important;
}

.workspace-card-viewer-body .inbox-patient-name{
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  font-size:15px!important;
  font-weight:600!important;
  line-height:1.25!important;
  letter-spacing:-0.005em!important;
}

.workspace-card-viewer-body b{
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font-weight:600!important;
}

.workspace-card-viewer-body .inbox-empty-state{
  color:var(--ds-row-muted-text,var(--os-dashboard-muted,var(--muted,#7A6D5C)))!important;
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}

.workspace-card-viewer-body .notes-tab-row,
.workspace-card-viewer-body .incoming-referral-row,
.workspace-card-viewer-body .pending-consult-row,
.workspace-card-viewer-body .update-letter-row,
.workspace-card-viewer-body .outgoing-referral-row,
.workspace-card-viewer-body .test-result-row,
.workspace-card-viewer-body .cataract-waitlist-row,
.workspace-card-viewer-body .upcoming-or-day-row,
.workspace-card-viewer-body .billing-claim-row{
  cursor:pointer!important;
}

.workspace-card-viewer-body .notes-tab-row:hover,
.workspace-card-viewer-body .notes-tab-row:focus-visible,
.workspace-card-viewer-body .incoming-referral-row:hover,
.workspace-card-viewer-body .incoming-referral-row:focus-visible,
.workspace-card-viewer-body .pending-consult-row:hover,
.workspace-card-viewer-body .pending-consult-row:focus-visible,
.workspace-card-viewer-body .update-letter-row:hover,
.workspace-card-viewer-body .update-letter-row:focus-visible,
.workspace-card-viewer-body .outgoing-referral-row:hover,
.workspace-card-viewer-body .outgoing-referral-row:focus-visible,
.workspace-card-viewer-body .test-result-row:hover,
.workspace-card-viewer-body .test-result-row:focus-visible,
.workspace-card-viewer-body .cataract-waitlist-row:hover,
.workspace-card-viewer-body .cataract-waitlist-row:focus-visible,
.workspace-card-viewer-body .upcoming-or-day-row:hover,
.workspace-card-viewer-body .upcoming-or-day-row:focus-visible,
.workspace-card-viewer-body .billing-claim-row:hover,
.workspace-card-viewer-body .billing-claim-row:focus-visible{
  background:var(--os-dashboard-row-hover-bg,color-mix(in srgb,var(--os-dashboard-accent-soft,var(--accent-soft,#F1DED4)) 50%,var(--os-dashboard-surface,var(--surface,#FAF4E8))))!important;
  outline:0!important;
}

.workspace-card-viewer-detail{
  min-height:240px!important;
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
}

.workspace-card-viewer-detail-head{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:16px 20px!important;
  border-bottom:0!important;
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
}

.workspace-card-viewer-detail-head h3{
  margin:0!important;
  padding-left:0!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:600 15px/1.25 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:-0.005em!important;
}

.workspace-card-viewer-back{
  position:absolute!important;
  top:16px!important;
  right:74px!important;
  z-index:2!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:72px!important;
  min-height:30px!important;
  padding:0 14px!important;
  border:1px solid var(--surface,#FAF4E8)!important;
  border-radius:8px!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--workspace-card-viewer-accent)!important;
  font:600 12px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  cursor:pointer!important;
}

.workspace-card-viewer-back:hover,
.workspace-card-viewer-back:focus-visible{
  background:var(--surface,#FAF4E8)!important;
  border-color:var(--surface,#FAF4E8)!important;
  color:color-mix(in srgb,var(--workspace-card-viewer-accent) 86%,var(--ink,#1F1B16))!important;
  outline:0!important;
}

.workspace-card-viewer-detail-body{
  padding:18px 38px 28px!important;
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
}

.workspace-card-viewer-referral-detail{
  display:grid!important;
  grid-template-rows:auto auto!important;
  gap:24px!important;
  min-height:0!important;
  max-width:820px!important;
  margin:0 auto!important;
}

.workspace-card-viewer-referral-note{
  min-width:0!important;
  width:min(680px,100%)!important;
  margin:0 auto!important;
  align-self:start!important;
  padding:16px 18px!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  cursor:pointer!important;
  transition:background 0.14s var(--ease, ease),border-color 0.14s var(--ease, ease),box-shadow 0.14s var(--ease, ease)!important;
}

.workspace-card-viewer-referral-note:hover,
.workspace-card-viewer-referral-note:focus-visible{
  background:color-mix(in srgb,var(--workspace-card-viewer-accent) 7%,var(--surface,#FAF4E8))!important;
  border-color:color-mix(in srgb,var(--workspace-card-viewer-accent) 28%,transparent)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--workspace-card-viewer-accent) 10%,transparent)!important;
  outline:0!important;
}

.workspace-card-viewer-referral-note .incoming-referral-row{
  display:flex!important;
  justify-content:center!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  cursor:default!important;
}

.workspace-card-viewer-referral-note .incoming-referral-row:hover,
.workspace-card-viewer-referral-note .incoming-referral-row:focus-visible{
  background:transparent!important;
}

.workspace-card-viewer-referral-note .incoming-referral-main{
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0 auto!important;
}

.workspace-card-viewer-referral-note .incoming-referral-provider,
.workspace-card-viewer-referral-note .incoming-referral-patient,
.workspace-card-viewer-referral-note .incoming-referral-brief-reason{
  display:block!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:600!important;
}

.workspace-card-viewer-referral-note .incoming-referral-provider b,
.workspace-card-viewer-referral-note .incoming-referral-patient b,
.workspace-card-viewer-referral-note .incoming-referral-brief-reason b{
  display:inline-block!important;
  min-width:128px!important;
  margin-right:16px!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:700 12px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}

.workspace-card-viewer-referral-actions{
  display:flex!important;
  flex-direction:row!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:26px!important;
  width:100%!important;
  margin-top:auto!important;
  padding-top:18px!important;
  border-top:1px solid color-mix(in srgb,var(--ink,#1F1B16) 7%,transparent)!important;
}

.workspace-card-viewer-referral-action-group{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:10px!important;
  width:300px!important;
}

.workspace-card-viewer-referral-action-group:first-child{
  width:420px!important;
}

.workspace-card-viewer-referral-book,
.workspace-card-viewer-referral-reject,
.workspace-card-viewer-referral-view{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:92px!important;
  min-height:32px!important;
  padding:0 16px!important;
  border-width:1px!important;
  border-style:solid!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  font:700 12.5px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  cursor:pointer!important;
}

.workspace-card-viewer-referral-view-row{
  display:flex!important;
  justify-content:center!important;
  margin-top:28px!important;
}

.workspace-card-viewer-referral-reader .workspace-card-viewer-detail-body{
  padding:18px 38px 30px!important;
}

.workspace-card-viewer-referral-page{
  width:min(720px,100%)!important;
  margin:0 auto!important;
}

.workspace-card-viewer-referral-page-title{
  margin:0 0 12px!important;
  color:var(--ds-row-muted-text,var(--muted,#7A6D5C))!important;
  font:700 11.5px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}

.workspace-card-viewer-referral-page-text{
  margin:0!important;
  min-height:280px!important;
  white-space:pre-wrap!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:500 15px/1.55 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
}

.workspace-card-viewer-referral-book{
  background:var(--ds-row-finalize-bg,#2F5F8A)!important;
  border-color:var(--ds-row-finalize-bg,#2F5F8A)!important;
  color:var(--surface,#FAF4E8)!important;
}

.workspace-card-viewer-referral-reject{
  background:var(--ds-row-delete-bg,var(--ink,#1F1B16))!important;
  border-color:var(--ds-row-delete-border,var(--ink,#1F1B16))!important;
  color:var(--ds-row-delete-glyph,var(--paper,#F4ECDD))!important;
}

.workspace-card-viewer-referral-view{
  background:var(--surface,#FAF4E8)!important;
  border-color:color-mix(in srgb,var(--workspace-card-viewer-accent) 28%,transparent)!important;
  color:var(--workspace-card-viewer-accent)!important;
}

.workspace-card-viewer-referral-book:hover,
.workspace-card-viewer-referral-book:focus-visible{
  background:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  border-color:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  color:var(--surface,#FAF4E8)!important;
  outline:0!important;
}

.workspace-card-viewer-referral-reject:hover,
.workspace-card-viewer-referral-reject:focus-visible{
  background:var(--ds-row-delete-hover-bg,var(--state-danger,#B33A2E))!important;
  border-color:var(--ds-row-delete-hover-border,var(--state-danger,#B33A2E))!important;
  color:var(--ds-row-delete-hover-glyph,var(--paper,#F4ECDD))!important;
  outline:0!important;
}

.workspace-card-viewer-referral-view:hover,
.workspace-card-viewer-referral-view:focus-visible{
  background:color-mix(in srgb,var(--workspace-card-viewer-accent) 10%,var(--surface,#FAF4E8))!important;
  border-color:color-mix(in srgb,var(--workspace-card-viewer-accent) 36%,transparent)!important;
  color:var(--workspace-card-viewer-accent)!important;
  outline:0!important;
}

.workspace-card-viewer-referral-book-note,
.workspace-card-viewer-referral-book-when-count,
.workspace-card-viewer-referral-book-when-unit,
.workspace-card-viewer-referral-testing-search,
.workspace-card-viewer-referral-reject-note{
  width:100%!important;
  box-sizing:border-box!important;
  padding:9px 11px!important;
  border:1px solid var(--line,#E6DCC7)!important;
  border-radius:8px!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:500 12.5px/1.35 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}

.workspace-card-viewer-referral-book-note,
.workspace-card-viewer-referral-reject-note{
  min-height:54px!important;
  resize:vertical!important;
}

.workspace-card-viewer-referral-when-row{
  display:grid!important;
  grid-template-columns:minmax(0,0.42fr) minmax(0,0.58fr)!important;
  gap:8px!important;
  width:100%!important;
}

.workspace-card-viewer-referral-book-when-count,
.workspace-card-viewer-referral-book-when-unit{
  min-height:36px!important;
  resize:none!important;
  appearance:auto!important;
}

.workspace-card-viewer-referral-testing-search{
  min-height:34px!important;
}

.workspace-card-viewer-referral-field-label{
  align-self:flex-start!important;
  margin:0 0 -5px!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:700 11.5px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}

.workspace-card-viewer-referral-reject-required{
  width:100%!important;
  margin:-2px 0 -2px!important;
  color:var(--state-danger,#B33A2E)!important;
  font:700 12px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  text-align:left!important;
}

.workspace-card-viewer-referral-reject-required[hidden]{
  display:none!important;
}

.workspace-card-viewer-referral-testing{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:5px!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
}

.workspace-card-viewer-referral-testing label{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:24px!important;
  box-sizing:border-box!important;
  padding:5px 6px!important;
  border:1px solid color-mix(in srgb,var(--ink,#1F1B16) 10%,transparent)!important;
  border-radius:7px!important;
  background:color-mix(in srgb,var(--surface,#FAF4E8) 86%,var(--paper,#F4ECDD))!important;
  font:600 11.5px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  color:var(--muted,#7A6D5C)!important;
}

.workspace-card-viewer-referral-testing label[hidden]{
  display:none!important;
}

.workspace-card-viewer-referral-testing label:has(input:checked){
  border-color:color-mix(in srgb,var(--workspace-card-viewer-accent) 34%,transparent)!important;
  background:color-mix(in srgb,var(--workspace-card-viewer-accent) 10%,var(--surface,#FAF4E8))!important;
  color:var(--workspace-card-viewer-accent)!important;
}

.workspace-card-viewer-referral-testing input{
  width:13px!important;
  height:13px!important;
  margin:0!important;
  accent-color:var(--workspace-card-viewer-accent)!important;
}

.workspace-card-viewer-referral-book-note:focus,
.workspace-card-viewer-referral-book-when-count:focus,
.workspace-card-viewer-referral-book-when-unit:focus,
.workspace-card-viewer-referral-testing-search:focus,
.workspace-card-viewer-referral-testing:focus,
.workspace-card-viewer-referral-testing:focus-within,
.workspace-card-viewer-referral-reject-note:focus{
  border-color:var(--workspace-card-viewer-accent)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--workspace-card-viewer-accent) 18%,transparent)!important;
  outline:0!important;
}

.workspace-card-viewer-field-required{
  border-color:var(--state-danger,#B33A2E)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--state-danger,#B33A2E) 18%,transparent)!important;
}

@media (max-width:760px){
  .workspace-card-viewer-referral-detail{
    min-height:0!important;
  }
  .workspace-card-viewer-referral-actions{
    flex-direction:column!important;
    align-items:center!important;
    gap:18px!important;
    padding-top:0!important;
  }
}

.workspace-card-viewer-detail-actions{
  display:flex!important;
  justify-content:center!important;
  gap:10px!important;
  padding:16px 20px!important;
  border-top:0!important;
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
}

.workspace-card-viewer-edit,
.workspace-card-viewer-finalize{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:74px!important;
  min-width:74px!important;
  height:24px!important;
  min-height:24px!important;
  padding:0 10px!important;
  border-width:1px!important;
  border-style:solid!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  color:var(--surface,#FAF4E8)!important;
  font:600 11px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  text-transform:none!important;
  cursor:pointer!important;
  box-shadow:none!important;
}

.workspace-card-viewer-edit{
  background:var(--ds-row-modify-bg,#8A6A24)!important;
  border-color:var(--ds-row-modify-bg,#8A6A24)!important;
}

.workspace-card-viewer-finalize{
  background:var(--ds-row-finalize-bg,#2F5F8A)!important;
  border-color:var(--ds-row-finalize-bg,#2F5F8A)!important;
}

.workspace-card-viewer-edit:hover,
.workspace-card-viewer-edit:focus-visible{
  background:color-mix(in srgb,var(--ds-row-modify-bg,#8A6A24) 86%,var(--ink,#1F1B16))!important;
  border-color:color-mix(in srgb,var(--ds-row-modify-bg,#8A6A24) 86%,var(--ink,#1F1B16))!important;
  color:var(--surface,#FAF4E8)!important;
  outline:0!important;
}

.workspace-card-viewer-finalize:hover,
.workspace-card-viewer-finalize:focus-visible{
  background:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  border-color:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  color:var(--surface,#FAF4E8)!important;
  outline:0!important;
}

.workspace-card-viewer-full-note{
  margin:0!important;
  white-space:pre-wrap!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:500 13.5px/1.45 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
}

.workspace-card-viewer-full-note.is-editing{
  min-height:220px!important;
  padding:10px!important;
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--ds-row-modify-bg,#8A6A24) 26%,transparent)!important;
  outline:0!important;
}

.workspace-card-viewer-full-row{
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:500 13.5px/1.35 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}

.os-workspace-card .os-workspace-card-count[data-count-state="nonzero"],
.os-workspace-card .os-workspace-card-count.os-count-nonzero,
.inbox-section.os-workspace-card .inbox-section-count[data-count-state="nonzero"],
.inbox-section.os-workspace-card .inbox-section-count.os-count-nonzero,
.billing-claim-mini-card .inbox-section-count[data-count-state="nonzero"],
.billing-claim-mini-card .inbox-section-count.os-count-nonzero{
  background:var(--os-count-bg,var(--ds-followup-book-bg,color-mix(in srgb,var(--state-followup,#3D5F87) 14%,transparent)))!important;
  border-color:var(--os-count-border,color-mix(in srgb,var(--os-count-text,var(--ds-followup-book-text,var(--state-followup,#3D5F87))) 18%,transparent))!important;
  color:var(--os-count-text,var(--ds-followup-book-text,var(--state-followup,#3D5F87)))!important;
}

/* Body surface: flush with card edges; matches day sheet body surface. */
.os-workspace-card .os-workspace-card-body,
.inbox-section.os-workspace-card > .os-workspace-card-body{
  padding:0!important;
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
  flex:1 1 auto!important;
  min-width:0!important;
}

/* Legacy markup: when there is no `.os-workspace-card-body`, the
 * `.notes-tab-list` directly inside the inbox-section IS the body. Strip
 * its gap so rows stack edge-to-edge with hairlines instead of floating. */
.os-workspace-card > .notes-tab-list,
.os-workspace-card .os-workspace-card-body > .notes-tab-list,
.inbox-section.os-workspace-card > .notes-tab-list{
  display:block!important;
  padding:0!important;
  margin:0!important;
  gap:0!important;
  background:transparent!important;
}

/* Queue rows: drop the box, keep only a quiet bottom hairline.
 * Consumes --ds-row-bg / --ds-row-rule per contract so rows recolour
 * with the brand swatch. */
.os-workspace-card .notes-tab-row,
.os-workspace-card .incoming-referral-row,
.os-workspace-card .pending-consult-row,
.os-workspace-card .update-letter-row,
.os-workspace-card .outgoing-referral-row,
.os-workspace-card .test-result-row,
.os-workspace-card .cataract-waitlist-row,
.os-workspace-card .upcoming-or-day-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) max-content!important;
  align-items:center!important;
  column-gap:18px!important;
  background:var(--ds-row-bg,var(--surface,#FAF4E8))!important;
  border:0!important;
  border-bottom:1px solid var(--ds-row-rule,color-mix(in srgb,var(--ink,#1F1B16) 6%,transparent))!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:14px 20px!important;
}

.os-workspace-card .cataract-waitlist-row,
.os-workspace-card .upcoming-or-day-row{
  grid-template-columns:minmax(0,1fr)!important;
}

.os-workspace-card .notes-tab-row > :first-child,
.os-workspace-card .incoming-referral-main,
.os-workspace-card .pending-consult-grid{
  min-width:0!important;
}

.os-workspace-card .notes-tab-row-preview,
.os-workspace-card .notes-tab-row-meta,
.os-workspace-card .notes-tab-row-copy,
.os-workspace-card .incoming-referral-provider,
.os-workspace-card .incoming-referral-patient,
.os-workspace-card .incoming-referral-brief-reason,
.os-workspace-card .incoming-referral-preview,
.os-workspace-card .pending-consult-grid span{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.os-workspace-card .incoming-referral-provider,
.os-workspace-card .incoming-referral-patient,
.os-workspace-card .incoming-referral-brief-reason,
.os-workspace-card .pending-consult-grid span{
  white-space:nowrap!important;
}

.os-workspace-card .inbox-patient-name{
  color:var(--text,var(--ds-row-text,var(--ink,#1F1B16)))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:inherit!important;
  font-weight:600!important;
  line-height:inherit!important;
  letter-spacing:-0.005em!important;
}

.os-workspace-card .inbox-patient-meta,
.os-workspace-card .inbox-patient-separator{
  color:var(--ds-row-muted-text,var(--muted,#7A6D5C))!important;
  font-family:inherit!important;
  font-size:inherit!important;
  font-weight:500!important;
  line-height:inherit!important;
  letter-spacing:0!important;
}

.os-workspace-card .incoming-referral-reason{
  max-width:100%!important;
  box-sizing:border-box!important;
}

.os-workspace-card .incoming-referral-proposal-label{
  margin-top:2px!important;
  color:var(--ds-row-muted-text,var(--muted,#7A6D5C))!important;
  font:700 11.5px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}

.os-workspace-card .incoming-referral-proposal{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px 18px!important;
  padding:10px 12px!important;
  border:1px solid var(--line,#E6DCC7)!important;
  border-radius:8px!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:600 13px/1.35 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}

.os-workspace-card .incoming-referral-proposal-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
}

.os-workspace-card .incoming-referral-proposal-approve{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:86px!important;
  min-height:34px!important;
  padding:0 14px!important;
  border:1px solid var(--ds-row-finalize-bg,#2F5F8A)!important;
  border-radius:var(--os-workspace-action-radius,8px)!important;
  background:var(--ds-row-finalize-bg,#2F5F8A)!important;
  color:var(--surface,#FAF4E8)!important;
  font:700 12px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  cursor:pointer!important;
}

.os-workspace-card .incoming-referral-proposal-approve:hover,
.os-workspace-card .incoming-referral-proposal-approve:focus-visible{
  background:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  border-color:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  outline:0!important;
}

.os-workspace-card .notes-review-approve{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:86px!important;
  min-height:34px!important;
  padding:0 14px!important;
  border:1px solid var(--ds-row-finalize-bg,#2F5F8A)!important;
  border-radius:var(--os-workspace-action-radius,8px)!important;
  background:var(--ds-row-finalize-bg,#2F5F8A)!important;
  color:var(--surface,#FAF4E8)!important;
  font:700 12px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  cursor:pointer!important;
}

.os-workspace-card .notes-review-approve:hover,
.os-workspace-card .notes-review-approve:focus-visible{
  background:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  border-color:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  outline:0!important;
}

.os-workspace-card .incoming-referral-proposal b{
  margin-right:4px!important;
  color:var(--ds-row-text,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  font:700 11px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.os-workspace-card .notes-tab-row-actions,
.os-workspace-card .incoming-referral-actions,
.os-workspace-card .pending-consult-actions{
  justify-self:end!important;
  align-self:center!important;
  width:96px!important;
  min-width:96px!important;
  max-width:96px!important;
  display:flex!important;
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
}

.os-workspace-card .incoming-referral-actions{
  max-width:96px!important;
}

.os-workspace-card .pending-consult-actions:has(.outgoing-referral-remove),
.os-workspace-card .pending-consult-actions:has(.test-result-remove){
  align-items:flex-end!important;
}

.os-workspace-card .notes-tab-row-actions button,
.os-workspace-card .incoming-referral-actions button,
.os-workspace-card .pending-consult-actions button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:96px!important;
  min-width:96px!important;
  min-height:34px!important;
  padding:0 14px!important;
  border:1px solid var(--ds-card-action-border,color-mix(in srgb,var(--ink,#1F1B16) 22%,transparent))!important;
  border-radius:var(--os-workspace-action-radius,8px)!important;
  background:var(--ds-card-action-bg,transparent)!important;
  color:var(--ds-card-action-text,var(--ink,#1F1B16))!important;
  font:600 12px/1 var(--font,'Geist',system-ui,sans-serif)!important;
  letter-spacing:0!important;
  box-shadow:none!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}

.os-workspace-card .os-workspace-card-header-actions,
.inbox-section.os-workspace-card .inbox-section-head-actions,
.billing-claim-mini-card .inbox-section-head-actions{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  margin-left:auto!important;
  flex:0 0 auto!important;
}

.os-workspace-card .os-workspace-card-add,
.inbox-section.os-workspace-card .os-workspace-card-add,
.billing-claim-mini-card .os-workspace-card-add{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  min-width:26px!important;
  width:26px!important;
  height:26px!important;
  padding:0!important;
  border:1.25px solid color-mix(in srgb,currentColor 18%,transparent)!important;
  border-radius:10px!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;
  font:500 14px/1 var(--font,'Geist',system-ui,sans-serif)!important;
  letter-spacing:0!important;
  text-indent:0!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.os-workspace-card .os-workspace-card-add:hover,
.os-workspace-card .os-workspace-card-add:focus-visible,
.inbox-section.os-workspace-card .os-workspace-card-add:hover,
.inbox-section.os-workspace-card .os-workspace-card-add:focus-visible,
.billing-claim-mini-card .os-workspace-card-add:hover,
.billing-claim-mini-card .os-workspace-card-add:focus-visible{
  background:color-mix(in srgb,var(--ds-task-add-text,#7A6D5C) 28%,transparent)!important;
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
  color:var(--ds-task-add-text,var(--muted,#7A6D5C))!important;
  outline:0!important;
}

#tab-content-inbox .os-workspace-card .os-workspace-card-add,
#tab-content-waitlists .os-workspace-card .os-workspace-card-add,
#tab-content-billing .os-workspace-card .os-workspace-card-add,
#tab-content-inbox .os-workspace-card button,
#tab-content-waitlists .os-workspace-card button,
#tab-content-billing .os-workspace-card button,
#tab-content-inbox .os-workspace-card .notes-tab-row-actions,
#tab-content-inbox .os-workspace-card .incoming-referral-actions,
#tab-content-inbox .os-workspace-card .pending-consult-actions,
#tab-content-waitlists .os-workspace-card .notes-tab-row-actions,
#tab-content-waitlists .os-workspace-card .incoming-referral-actions,
#tab-content-waitlists .os-workspace-card .pending-consult-actions,
#tab-content-billing .os-workspace-card .notes-tab-row-actions,
#tab-content-billing .os-workspace-card .incoming-referral-actions,
#tab-content-billing .os-workspace-card .pending-consult-actions,
#tab-content-billing .os-workspace-card .billing-claim-row-actions{
  display:none!important;
}

#tab-content-inbox .os-workspace-card .incoming-referral-proposal-approve{
  display:inline-flex!important;
}

#tab-content-inbox .os-workspace-card .notes-review-approve{
  display:inline-flex!important;
}

#tab-content-inbox .os-workspace-card .notes-tab-row-actions:has(.notes-review-approve){
  display:flex!important;
}

#tab-content-inbox .os-workspace-card .notes-tab-row,
#tab-content-inbox .os-workspace-card .incoming-referral-row,
#tab-content-inbox .os-workspace-card .pending-consult-row,
#tab-content-inbox .os-workspace-card .update-letter-row,
#tab-content-inbox .os-workspace-card .outgoing-referral-row,
#tab-content-inbox .os-workspace-card .test-result-row,
#tab-content-waitlists .os-workspace-card .notes-tab-row,
#tab-content-waitlists .os-workspace-card .incoming-referral-row,
#tab-content-waitlists .os-workspace-card .pending-consult-row,
#tab-content-waitlists .os-workspace-card .cataract-waitlist-row,
#tab-content-waitlists .os-workspace-card .upcoming-or-day-row,
#tab-content-billing .os-workspace-card .notes-tab-row,
#tab-content-billing .os-workspace-card .billing-claim-row{
  grid-template-columns:minmax(0,1fr)!important;
}

.os-workspace-card .notes-tab-row-actions button:hover,
.os-workspace-card .incoming-referral-actions button:hover,
.os-workspace-card .pending-consult-actions button:hover{
  background:var(--ds-card-action-hover-bg,color-mix(in srgb,var(--ink,#1F1B16) 5%,transparent))!important;
  color:var(--ds-card-action-hover-text,var(--ink,#1F1B16))!important;
  border-color:var(--ds-card-action-hover-border,color-mix(in srgb,var(--ink,#1F1B16) 35%,transparent))!important;
  filter:none!important;
}

/* Inbox action buttons — uniform outlined-neutral (v4.6).
 * Book / Include / View / Reject / Exclude share the same
 * --ds-card-action-* treatment so the row reads as a calm set of
 * equal-weight affordances. Finalize opts into the solid action
 * contract, while X buttons opt into the Day Sheet destructive icon
 * contract below. */
.os-workspace-card .incoming-referral-book,
.os-workspace-card .update-letter-include,
.os-workspace-card .pending-consult-book,
.os-workspace-card .incoming-referral-reject,
.os-workspace-card .update-letter-exclude,
.os-workspace-card .notes-tab-row-actions [data-action="view"]{
  background:var(--ds-card-action-bg,transparent)!important;
  border-color:var(--ds-card-action-border,color-mix(in srgb,var(--ink,#1F1B16) 22%,transparent))!important;
  color:var(--ds-card-action-text,var(--ink,#1F1B16))!important;
}

/* Positive row action hover — Book / Include / View stay neutral. */
.os-workspace-card .incoming-referral-book:hover,
.os-workspace-card .update-letter-include:hover,
.os-workspace-card .pending-consult-book:hover,
.os-workspace-card .notes-tab-row-actions [data-action="view"]:hover{
  background:var(--ds-card-action-hover-bg,color-mix(in srgb,var(--ink,#1F1B16) 5%,transparent))!important;
  border-color:var(--ds-card-action-hover-border,color-mix(in srgb,var(--ink,#1F1B16) 35%,transparent))!important;
  color:var(--ds-card-action-hover-text,var(--ink,#1F1B16))!important;
}

.os-workspace-card .notes-tab-row-actions .notes-review-view[data-action="view"],
.os-workspace-card .incoming-referral-actions .notes-review-view[data-action="view"]{
  background:var(--ds-followup-book-bg,color-mix(in srgb,var(--state-followup,#3D5F87) 14%,transparent))!important;
  border-color:color-mix(in srgb,var(--ds-followup-book-text,var(--state-followup,#3D5F87)) 18%,transparent)!important;
  color:var(--ds-followup-book-text,var(--state-followup,#3D5F87))!important;
}

.os-workspace-card .notes-tab-row-actions .notes-review-view[data-action="view"]:hover,
.os-workspace-card .notes-tab-row-actions .notes-review-view[data-action="view"]:focus-visible,
.os-workspace-card .incoming-referral-actions .notes-review-view[data-action="view"]:hover,
.os-workspace-card .incoming-referral-actions .notes-review-view[data-action="view"]:focus-visible{
  background:color-mix(in srgb,var(--ds-followup-book-text,var(--state-followup,#3D5F87)) 18%,transparent)!important;
  border-color:color-mix(in srgb,var(--ds-followup-book-text,var(--state-followup,#3D5F87)) 22%,transparent)!important;
  color:var(--ds-followup-book-text,var(--state-followup,#3D5F87))!important;
}

.os-workspace-card .notes-tab-row-actions .notes-review-finalize.os-button-dark{
  min-width:88px!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 16px!important;
  border-radius:var(--os-workspace-action-radius,8px)!important;
  background:var(--os-button-primary-bg,var(--ink,#1F1B16))!important;
  border:1px solid var(--os-button-primary-border,var(--ink,#1F1B16))!important;
  color:var(--os-button-primary-text,var(--paper,#F4ECDD))!important;
  font:700 12px/1 var(--font,'Geist',system-ui,sans-serif)!important;
  letter-spacing:0!important;
  text-indent:0!important;
}

.os-workspace-card .notes-tab-row-actions .notes-review-finalize.os-button-dark:hover,
.os-workspace-card .notes-tab-row-actions .notes-review-finalize.os-button-dark:focus-visible{
  background:var(--os-button-primary-hover-bg,color-mix(in srgb,var(--ink,#1F1B16) 86%,var(--accent,#C2553A)))!important;
  border-color:var(--os-button-primary-hover-border,var(--os-button-primary-hover-bg,color-mix(in srgb,var(--ink,#1F1B16) 86%,var(--accent,#C2553A))))!important;
  color:var(--os-button-primary-text,var(--paper,#F4ECDD))!important;
}

/* Destructive text action hover — Reject / Exclude flip to --state-danger
 * so destructive intent is visible without dominating at rest. */
.os-workspace-card .incoming-referral-reject:hover,
.os-workspace-card .update-letter-exclude:hover{
  background:var(--ds-card-action-danger-hover-bg,color-mix(in srgb,var(--state-danger,#B33A2E) 10%,transparent))!important;
  border-color:var(--ds-card-action-danger-hover-border,color-mix(in srgb,var(--state-danger,#B33A2E) 40%,transparent))!important;
  color:var(--ds-card-action-danger-hover-text,var(--state-danger,#B33A2E))!important;
}

.os-workspace-card .outgoing-referral-remove,
.os-workspace-card .test-result-remove,
#outgoing-referrals-list .outgoing-referral-remove,
#test-results-list .outgoing-referral-remove,
#test-results-list .test-result-remove,
.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:var(--os-destructive-icon-action-size,var(--os-icon-button-size,30px))!important;
  width:var(--os-destructive-icon-action-size,var(--os-icon-button-size,30px))!important;
  height:var(--os-destructive-icon-action-size,var(--os-icon-button-size,30px))!important;
  min-height:var(--os-destructive-icon-action-size,var(--os-icon-button-size,30px))!important;
  padding:0!important;
  background:var(--ds-row-delete-bg,var(--ink,#1f1b16))!important;
  border:1px solid var(--ds-row-delete-border,var(--ink,#1f1b16))!important;
  border-radius:var(--os-destructive-icon-action-radius,var(--os-button-icon-shape-radius,8px))!important;
  color:transparent!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
  box-shadow:none!important;
  line-height:1!important;
  font-size:0!important;
}

.os-workspace-card .outgoing-referral-remove::before,
.os-workspace-card .test-result-remove::before,
#outgoing-referrals-list .outgoing-referral-remove::before,
#test-results-list .outgoing-referral-remove::before,
#test-results-list .test-result-remove::before,
.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:var(--ds-row-delete-glyph,var(--paper,#F4ECDD))!important;
  -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3.5' stroke-linecap='round'><line x1='6' y1='6' x2='18' y2='18'/><line x1='18' y1='6' x2='6' y2='18'/></svg>")!important;
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3.5' stroke-linecap='round'><line x1='6' y1='6' x2='18' y2='18'/><line x1='18' y1='6' x2='6' y2='18'/></svg>")!important;
  -webkit-mask-position:center!important;
  mask-position:center!important;
  -webkit-mask-repeat:no-repeat!important;
  mask-repeat:no-repeat!important;
  -webkit-mask-size:18px 18px!important;
  mask-size:18px 18px!important;
}

.os-workspace-card .outgoing-referral-remove:hover,
.os-workspace-card .outgoing-referral-remove:focus-visible,
.os-workspace-card .test-result-remove:hover,
.os-workspace-card .test-result-remove:focus-visible,
#outgoing-referrals-list .outgoing-referral-remove:hover,
#outgoing-referrals-list .outgoing-referral-remove:focus-visible,
#test-results-list .outgoing-referral-remove:hover,
#test-results-list .outgoing-referral-remove:focus-visible,
#test-results-list .test-result-remove:hover,
#test-results-list .test-result-remove:focus-visible,
.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark:hover,
.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark:focus-visible{
  background:var(--ds-row-delete-hover-bg,var(--state-danger,#B33A2E))!important;
  border-color:var(--ds-row-delete-hover-border,var(--state-danger,#B33A2E))!important;
  color:transparent!important;
}

.os-workspace-card .outgoing-referral-remove:hover::before,
.os-workspace-card .outgoing-referral-remove:focus-visible::before,
.os-workspace-card .test-result-remove:hover::before,
.os-workspace-card .test-result-remove:focus-visible::before,
#outgoing-referrals-list .outgoing-referral-remove:hover::before,
#outgoing-referrals-list .outgoing-referral-remove:focus-visible::before,
#test-results-list .outgoing-referral-remove:hover::before,
#test-results-list .outgoing-referral-remove:focus-visible::before,
#test-results-list .test-result-remove:hover::before,
#test-results-list .test-result-remove:focus-visible::before,
.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark:hover::before,
.note-view-modal-close.dashboard-remove-appointment-btn.os-button-dark:focus-visible::before{
  background:var(--ds-row-delete-hover-glyph,var(--paper,#F4ECDD))!important;
}

/* No double-line where the last row meets the card edge or a footer band. */
.os-workspace-card .notes-tab-row:last-child,
.os-workspace-card .incoming-referral-row:last-child,
.os-workspace-card .pending-consult-row:last-child,
.os-workspace-card .update-letter-row:last-child,
.os-workspace-card .outgoing-referral-row:last-child,
.os-workspace-card .test-result-row:last-child,
.os-workspace-card .cataract-waitlist-row:last-child,
.os-workspace-card .upcoming-or-day-row:last-child{
  border-bottom:0!important;
}

/* Hover wash: matches day sheet row hover. */
.os-workspace-card .notes-tab-row:hover,
.os-workspace-card .incoming-referral-row:hover,
.os-workspace-card .pending-consult-row:hover,
.os-workspace-card .update-letter-row:hover,
.os-workspace-card .outgoing-referral-row:hover,
.os-workspace-card .test-result-row:hover,
.os-workspace-card .cataract-waitlist-row:hover,
.os-workspace-card .upcoming-or-day-row:hover{
  background:var(--os-dashboard-row-hover-bg,color-mix(in srgb,var(--os-dashboard-accent-soft,var(--accent-soft,#F1DED4)) 50%,var(--os-dashboard-surface,var(--surface,#FAF4E8))))!important;
}

/* Row labels (the bold <b> tags) use dashboard ink so the row reads as
 * tabular data, not a chip cluster. */
.os-workspace-card .incoming-referral-main b,
.os-workspace-card .incoming-referral-meta b,
.os-workspace-card .pending-consult-grid b,
.os-workspace-card .notes-tab-row b{
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
}

/* Empty state: flat — no nested card surface inside the workspace card. */
.os-workspace-card .inbox-empty-state,
.os-workspace-card .notes-tab-empty{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:20px!important;
  min-height:56px!important;
}

/* Optional footer band (e.g. wait-list estimate): mirrors day sheet footer. */
.os-workspace-card .waitlist-estimate{
  margin:0!important;
  padding:16px 20px!important;
  background:var(--os-dashboard-header-footer-bg,var(--os-component-header-footer-bg,color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 3%,var(--os-dashboard-surface,var(--surface,#FAF4E8)))))!important;
  border-top:1px solid color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 10%,transparent)!important;
}

#content-daysheet .os-date-action .os-icon-inline,
#content-daysheet .os-date-action #ds-date{
  color:inherit!important;
}
#content-daysheet .os-date-action{
  gap:8px!important;
}
#content-daysheet #ds-table{
  table-layout:auto!important;
}
#content-daysheet #ds-table col.ds-col-time{width:1%!important;}
#content-daysheet #ds-table col.ds-col-patient{width:1%!important;}
#content-daysheet #ds-table col.ds-col-status{width:1%!important;}
#content-daysheet #ds-table col.ds-col-reason{width:auto!important;}
#content-daysheet #ds-table col.ds-col-testing{width:1%!important;}
#content-daysheet #ds-table col.ds-col-tasks{width:1%!important;}
#content-daysheet #ds-table col.ds-col-encounter{width:1%!important;}
#content-daysheet #ds-table col.ds-col-edit{width:1%!important;}
#content-daysheet #ds-table thead th,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td{
  padding-left:18px!important;
  padding-right:18px!important;
}
#content-daysheet #ds-table thead th:first-child,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td:first-child{
  padding-left:28px!important;
}
#content-daysheet #ds-table thead th:last-child,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td:last-child{
  padding-right:28px!important;
}
#content-daysheet #ds-table thead th:nth-child(1),
#content-daysheet #ds-table thead th:nth-child(2),
#content-daysheet #ds-table thead th:nth-child(3),
#content-daysheet #ds-table thead th:nth-child(5),
#content-daysheet #ds-table thead th:nth-child(6),
#content-daysheet #ds-table thead th:nth-child(7),
#content-daysheet #ds-table thead th:nth-child(8){
  text-align:center!important;
}
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td.dashboard-time-cell,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td:nth-child(3),
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td.dashboard-testing-cell,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td.dashboard-tasks-cell,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td.dashboard-encounter-cell,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td.dashboard-edit-cell{
  text-align:center!important;
}
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td.dashboard-tasks-cell{
  padding-left:18px!important;
  padding-right:18px!important;
}
#content-daysheet .dashboard-tasks{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(48px,1fr))!important;
  gap:10px!important;
  align-items:start!important;
  justify-items:center!important;
}
#content-daysheet .dashboard-task{
  width:100%!important;
  min-width:0!important;
  align-items:center!important;
}
#content-daysheet .dashboard-task-badge{
  max-width:none!important;
  min-width:28px!important;
  height:24px!important;
  padding:0 9px!important;
}
#content-daysheet .dashboard-task-label{
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  font-size:9.5px!important;
  letter-spacing:0.08em!important;
}
#content-daysheet .dashboard-patient-name,
#content-daysheet .dashboard-patient-meta{
  white-space:nowrap!important;
  text-align:center!important;
  justify-content:center!important;
}
#content-daysheet .dashboard-files-action.dashboard-task-badge{
  width:26px!important;
  min-width:26px!important;
  height:26px!important;
  padding:0!important;
}
#content-daysheet .dashboard-survey-control.dashboard-task-badge{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  height:auto!important;
  min-width:26px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
#content-daysheet .dashboard-survey-action.os-button-light{
  width:26px!important;
  min-width:26px!important;
  height:26px!important;
  padding:0!important;
}
#content-daysheet .dashboard-start-encounter-btn{
  min-width:112px!important;
  min-height:28px!important;
  height:28px!important;
  padding:0 10px!important;
  white-space:nowrap!important;
  font:600 11px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#content-daysheet .dashboard-encounter-actions{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-width:112px!important;
}
#content-daysheet .dashboard-edit-row{
  justify-content:center!important;
  gap:8px!important;
}
#content-daysheet .dashboard-appointment-type-text,
#content-daysheet .dashboard-appointment-type-text[data-appt-specialty]{
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  padding:3px 10px!important;
  border:0!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--ds-type-pill-bg,color-mix(in srgb,var(--accent,#C2553A) 13%,var(--surface,#FAF4E8)))!important;
  color:var(--ds-type-pill-text,var(--accent,#C2553A))!important;
  font:600 10px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}
#content-daysheet .appointment_details_button,
#content-daysheet .appointment_details_button[data-appt-specialty]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  padding:4px 10px!important;
  border:1px solid color-mix(in srgb,currentColor 18%,transparent)!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--ds-task-sent-bg,var(--accent-soft,#F1DED4))!important;
  background-clip:padding-box!important;
  color:var(--ds-task-sent-text,var(--accent-ink,#8E3A26))!important;
  box-shadow:none!important;
  text-decoration:none!important;
  filter:none!important;
  cursor:pointer!important;
  font:600 10px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}
#content-daysheet .appointment_details_button:hover,
#content-daysheet .appointment_details_button:focus-visible{
  background:color-mix(in srgb,var(--accent,#C2553A) 20%,var(--surface,#FAF4E8))!important;
  background-clip:padding-box!important;
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
  color:var(--ds-task-sent-text,var(--accent-ink,#8E3A26))!important;
  box-shadow:none!important;
  outline:0!important;
  text-decoration:none!important;
  filter:none!important;
}
#content-daysheet .appointment_details_button.is-selected,
#content-daysheet .appointment_details_button.active,
#content-daysheet .appointment_details_button.selected,
#content-daysheet .appointment_details_button[data-active="true"],
#content-daysheet .appointment_details_button[data-selected="true"],
#content-daysheet .appointment_details_button[aria-pressed="true"],
#content-daysheet .appointment_details_button[aria-selected="true"]{
  background:color-mix(in srgb,var(--accent,#C2553A) 24%,var(--surface,#FAF4E8))!important;
  background-clip:padding-box!important;
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
  box-shadow:none!important;
}

html[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .dashboard-appointment-type-text,
html[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .dashboard-appointment-type-text[data-appt-specialty],
html[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .dashboard-appointment-type-text.os-appt-type-chip,
html[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .appointment_details_button,
html[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .appointment_details_button[data-appt-specialty],
body[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .dashboard-appointment-type-text,
body[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .dashboard-appointment-type-text[data-appt-specialty],
body[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .dashboard-appointment-type-text.os-appt-type-chip,
body[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .appointment_details_button,
body[data-widget-style="executive"] #content-daysheet .dashboard-reason-cell .appointment_details_button[data-appt-specialty]{
  border-radius:var(--os-button-shape-radius,8px)!important;
}

.encounter-context-appt.dashboard-appointment-type-text{
  width:max-content!important;
  max-width:100%!important;
  padding:3px 10px!important;
  border:0!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--ds-type-pill-bg,color-mix(in srgb,var(--accent,#C2553A) 13%,var(--surface,#FAF4E8)))!important;
  color:var(--ds-type-pill-text,var(--accent,#C2553A))!important;
  font:600 10px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}
#content-daysheet .dashboard-start-encounter-btn.os-button-light{
  background:var(--ds-encounter-start-bg,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
  color:var(--ds-encounter-start-text,var(--os-dashboard-paper,var(--bg,#F4ECDD)))!important;
  border:1px solid var(--ds-encounter-start-border,var(--os-dashboard-ink,var(--ink,#1F1B16)))!important;
}
#content-daysheet .dashboard-start-encounter-btn.os-button-light:hover,
#content-daysheet .dashboard-start-encounter-btn.os-button-light:focus-visible{
  background:var(--ds-encounter-start-hover-bg,color-mix(in srgb,var(--ink,#1f1b16) 86%,var(--accent,#c2553a)))!important;
  border-color:var(--ds-encounter-start-border,var(--ink,#1f1b16))!important;
  color:var(--ds-encounter-start-text,var(--paper,#f4ecdd))!important;
}
#content-daysheet .dashboard-start-encounter-btn.resume,
#content-daysheet .dashboard-start-encounter-btn.os-button-light.resume{
  background:var(--ds-encounter-resume-bg,var(--accent,#c2553a))!important;
  color:var(--ds-encounter-resume-text,var(--surface,#faf4e8))!important;
  border-color:var(--ds-encounter-resume-border,var(--accent,#c2553a))!important;
}
#content-daysheet .dashboard-start-encounter-btn.resume:hover,
#content-daysheet .dashboard-start-encounter-btn.os-button-light.resume:hover,
#content-daysheet .dashboard-start-encounter-btn.resume:focus-visible,
#content-daysheet .dashboard-start-encounter-btn.os-button-light.resume:focus-visible{
  background:var(--ds-encounter-resume-hover-bg,color-mix(in srgb,var(--accent,#c2553a) 88%,var(--ink,#1f1b16)))!important;
  border-color:var(--ds-encounter-resume-border,var(--accent,#c2553a))!important;
  color:var(--ds-encounter-resume-text,var(--surface,#faf4e8))!important;
}
#content-daysheet .dashboard-start-encounter-btn.done,
#content-daysheet .dashboard-start-encounter-btn.os-button-light.done{
  background:var(--ds-encounter-view-bg,transparent)!important;
  color:var(--ds-encounter-view-text,var(--accent,#c2553a))!important;
  border-color:var(--ds-encounter-view-border,color-mix(in srgb,var(--accent,#c2553a) 50%,transparent))!important;
}
#content-daysheet .dashboard-start-encounter-btn.done:hover,
#content-daysheet .dashboard-start-encounter-btn.os-button-light.done:hover,
#content-daysheet .dashboard-start-encounter-btn.done:focus-visible,
#content-daysheet .dashboard-start-encounter-btn.os-button-light.done:focus-visible{
  background:var(--ds-encounter-view-hover-bg,color-mix(in srgb,var(--accent,#c2553a) 8%,transparent))!important;
  color:var(--ds-encounter-view-text,var(--accent,#c2553a))!important;
  border-color:var(--ds-encounter-view-border,color-mix(in srgb,var(--accent,#c2553a) 50%,transparent))!important;
}
/* ─── Task chips — COLUMN-DRIVEN baseline (v4) ──────────────────
 * Each task column carries its canonical colour at baseline; the
 * colour does NOT vary with appointment status (data state). Source
 * mapping is taken from the canonical 4-icon row in
 * ~/Desktop/ophtho-scribe-claude-ai-design/Dashboard - Palette
 * Variations (source for bundle).html (Noah Patel row, lines 615-619):
 *
 *   SURVEY  → sent role    (↗  accent-soft bg + accent-ink text)
 *   FILES   → add role     (+  ink 8% bg + muted text)
 *   BILLING → pending role (·  warning 16% bg + warning text — amber)
 *   F/U     → needed role  (!  info 14% bg + info text — blue)
 *
 * Every dashboard-{survey,billing,followup}-status-* variant class is
 * overridden by these column rules so the chip colour stays constant
 * whether the data is "none", "pending", "submitted", etc. The 6
 * --ds-task-{done,pending,sent,needed,add,empty} state roles in the
 * contract remain available for any future variant-driven need.
 * ──────────────────────────────────────────────────────────────── */

/* SURVEY column — independent muted brown role. */
#content-daysheet .dashboard-task-survey .dashboard-task-badge,
#content-daysheet .dashboard-task-survey .dashboard-survey-control,
#content-daysheet .dashboard-survey-action.os-button-light,
#content-daysheet .dashboard-survey-status,
#content-daysheet .dashboard-survey-status-completed,
#content-daysheet .dashboard-survey-status-sent,
#content-daysheet .dashboard-survey-status-in-person,
#content-daysheet .dashboard-survey-status-none{
  background:var(--ds-survey-bg,#E8DFD1)!important;
  color:var(--ds-survey-text,#7A5C3A)!important;
  border-color:transparent!important;
  opacity:1!important;
}
#content-daysheet .dashboard-survey-action.os-button-light:hover,
#content-daysheet .dashboard-survey-action.os-button-light:focus-visible{
  background:var(--ds-survey-bg,#E8DFD1)!important;
  color:var(--ds-survey-text,#7A5C3A)!important;
  border-color:transparent!important;
}
#content-daysheet .dashboard-task-survey .dashboard-survey-control.dashboard-task-badge:hover,
#content-daysheet .dashboard-task-survey .dashboard-survey-control.dashboard-task-badge:focus-visible{
  background:transparent!important;
  border-color:transparent!important;
}

/* FILES column — add role (ink 8% + muted). */
#content-daysheet .dashboard-task-files .dashboard-task-badge,
#content-daysheet .dashboard-files-action.dashboard-task-badge,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light{
  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;
  opacity:1!important;
}
#content-daysheet .dashboard-task-files .dashboard-task-badge:hover,
#content-daysheet .dashboard-task-files .dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-files-action.dashboard-task-badge:hover,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light:hover,
#content-daysheet .dashboard-files-action.dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light:focus-visible{
  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;
}

/* BILLING column — pending role (warning 16% + warning — amber). */
#content-daysheet .dashboard-task-billing .dashboard-task-badge,
#content-daysheet .dashboard-billing-status,
#content-daysheet .dashboard-billing-status-submitted,
#content-daysheet .dashboard-billing-status-pending,
#content-daysheet .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;
  border-color:transparent!important;
  opacity:1!important;
}
#content-daysheet .dashboard-billing-action{
  cursor:pointer!important;
  font-size:14px!important;
  line-height:1!important;
  opacity:1!important;
}
#content-daysheet .dashboard-billing-action:hover,
#content-daysheet .dashboard-billing-action:focus-visible{
  color:var(--ds-task-pending-text,var(--warning,#A57225))!important;
}

/* F/U column — needed role (info 14% + info — blue). */
#content-daysheet .dashboard-task-followup .dashboard-task-badge,
#content-daysheet .dashboard-followup-status,
#content-daysheet .dashboard-followup-status-book,
#content-daysheet .dashboard-followup-status-booked,
#content-daysheet .dashboard-followup-status-pending,
#content-daysheet .dashboard-followup-status-none{
  background:var(--ds-followup-bg,color-mix(in srgb,var(--state-followup,#3D5F87) 14%,transparent))!important;
  color:var(--ds-followup-text,var(--state-followup,#3D5F87))!important;
  border-color:transparent!important;
  opacity:1!important;
}

/* Completed task state — wins over the column baseline above. */
#content-daysheet .dashboard-files-action.dashboard-files-added.dashboard-task-badge,
#content-daysheet .dashboard-files-action.dashboard-files-added.dashboard-task-badge.os-button-light,
#content-daysheet .dashboard-billing-status-submitted{
  background:var(--ds-task-done-bg,color-mix(in srgb,var(--success,#5C7A5B) 18%,transparent))!important;
  color:var(--ds-task-done-text,var(--success,#5C7A5B))!important;
  border-color:transparent!important;
  opacity:1!important;
}

#content-daysheet .dashboard-followup-status-book,
#content-daysheet .dashboard-followup-status-booked{
  background:var(--ds-followup-bg,color-mix(in srgb,var(--state-followup,#3D5F87) 14%,transparent))!important;
  color:var(--ds-followup-text,var(--state-followup,#3D5F87))!important;
  border-color:transparent!important;
  opacity:1!important;
}
#content-daysheet .dashboard-task-followup .dashboard-followup-status-book.dashboard-task-badge{
  background:var(--ds-followup-bg,color-mix(in srgb,var(--state-followup,#3D5F87) 14%,transparent))!important;
  color:var(--ds-followup-text,var(--state-followup,#3D5F87))!important;
}
#content-daysheet .dashboard-followup-status.dashboard-task-badge{
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
  font-family:var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
#content-daysheet .dashboard-followup-status.dashboard-task-badge:hover,
#content-daysheet .dashboard-followup-status.dashboard-task-badge:focus-visible{
  outline:0!important;
}
#content-daysheet .dashboard-files-action.dashboard-files-added.dashboard-task-badge:hover,
#content-daysheet .dashboard-files-action.dashboard-files-added.dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-files-action.dashboard-files-added.dashboard-task-badge.os-button-light:hover,
#content-daysheet .dashboard-files-action.dashboard-files-added.dashboard-task-badge.os-button-light:focus-visible{
  background:var(--ds-task-done-bg,color-mix(in srgb,var(--success,#5C7A5B) 22%,transparent))!important;
  color:var(--ds-task-done-text,var(--success,#5C7A5B))!important;
  border-color:transparent!important;
}

#content-daysheet .dashboard-task-badge:hover,
#content-daysheet .dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-survey-action.os-button-light:hover,
#content-daysheet .dashboard-survey-action.os-button-light:focus-visible,
#content-daysheet .dashboard-billing-action:hover,
#content-daysheet .dashboard-billing-action:focus-visible,
#content-daysheet .dashboard-followup-status.dashboard-task-badge:hover,
#content-daysheet .dashboard-followup-status.dashboard-task-badge:focus-visible{
  filter:brightness(0.94) saturate(1.02)!important;
  outline:0!important;
}
/* Day-sheet × — solid ink chip + paper glyph (v4 Option B). */
#content-daysheet .dashboard-remove-appointment-btn.os-button-dark{
  background:var(--ds-row-delete-bg,var(--ink,#1f1b16))!important;
  border:1px solid var(--ds-row-delete-border,var(--ink,#1f1b16))!important;
  color:transparent!important;
}
/* Day-sheet ✎ — outlined light chip + ink glyph (v4 Option B). */
#content-daysheet .dashboard-edit-appointment-btn.os-button-light{
  background:var(--ds-row-edit-bg,var(--surface,#FAF4E8))!important;
  border:1px solid var(--ds-row-edit-border,color-mix(in srgb,var(--ink,#1f1b16) 22%,transparent))!important;
  color:transparent!important;
}
#content-daysheet .dashboard-remove-appointment-btn.os-button-dark:hover,
#content-daysheet .dashboard-remove-appointment-btn.os-button-dark:focus-visible{
  background:var(--ds-row-delete-hover-bg,var(--state-danger,#B33A2E))!important;
  border-color:var(--ds-row-delete-hover-border,var(--state-danger,#B33A2E))!important;
}
#content-daysheet .dashboard-edit-appointment-btn.os-button-light:hover,
#content-daysheet .dashboard-edit-appointment-btn.os-button-light:focus-visible{
  background:var(--ds-row-edit-hover-bg,color-mix(in srgb,var(--ink,#1f1b16) 5%,var(--surface,#FAF4E8)))!important;
  border-color:var(--ds-row-edit-hover-border,color-mix(in srgb,var(--ink,#1f1b16) 35%,transparent))!important;
}
#content-daysheet .dashboard-remove-appointment-btn.os-button-dark:hover::before,
#content-daysheet .dashboard-remove-appointment-btn.os-button-dark:focus-visible::before{
  background:var(--ds-row-delete-hover-glyph,var(--paper,#F4ECDD))!important;
}
#content-daysheet .dashboard-edit-appointment-btn.os-button-light:hover::before,
#content-daysheet .dashboard-edit-appointment-btn.os-button-light:focus-visible::before{
  background:var(--ds-row-edit-hover-glyph,var(--ink,#1f1b16))!important;
}
#content-daysheet #ds-body .dashboard-footer-row{
  background:var(--ds-footer-bg,color-mix(in srgb,var(--accent,#C2553A) 13%,var(--surface,#FAF4E8)))!important;
}

/* ─────────────────────────────────────────────────────────────────────
 * Dashboard table — visual polish layer
 * Refines column proportions, vertical rhythm, and component density
 * without changing markup, JS, classes, or the structural contracts
 * verified by tests/e2e/component-appearance-contract.spec.js.
 *
 * Loads last so it wins specificity ties with the earlier dashboard
 * rules in this file and in css/app-shell-tone.css.
 * ───────────────────────────────────────────────────────────────────── */

/* Column widths — distribute proportionally.
 *
 * Investigation history:
 *   1. Tight min-widths on data columns caused left-aligned content
 *      to leave dead space on the right (Patient/Status gap).
 *   2. Removing those mins let Reason (width:auto) absorb ALL of the
 *      table's leftover width, so on wide viewports the chip + reason
 *      text floated alone in a 600+px column — visible to the user as
 *      "too much space everywhere".
 *
 * Final approach: percentage widths on the colgroup. table-layout:auto
 * is preserved (contract-pinned). The browser treats these as strong
 * hints and distributes width across all columns rather than dumping
 * everything into Reason. Each column gets enough room for its widest
 * realistic content; min-widths are kept only on structural columns. */
#content-daysheet #ds-table col.ds-col-time{width:7%!important;}
#content-daysheet #ds-table col.ds-col-patient{width:14%!important;}
#content-daysheet #ds-table col.ds-col-status{width:10%!important;}
#content-daysheet #ds-table col.ds-col-reason{width:15%!important;}
#content-daysheet #ds-table col.ds-col-testing{width:11%!important;}
#content-daysheet #ds-table col.ds-col-tasks{width:24%!important;}
#content-daysheet #ds-table col.ds-col-encounter{width:12%!important;}
#content-daysheet #ds-table col.ds-col-edit{width:7%!important;}

/* Min-widths only where layout has a structural minimum:
 *   - Tasks (col 6): 4-cell grid needs ~200px
 *   - Encounter (col 7): consistent button width regardless of label
 *   - Edit (col 8): two 32px icon buttons + 6px gap + padding */
#content-daysheet #ds-table thead th:nth-child(1),
#content-daysheet #ds-table thead th:nth-child(2),
#content-daysheet #ds-table thead th:nth-child(3),
#content-daysheet #ds-table thead th:nth-child(4),
#content-daysheet #ds-table thead th:nth-child(5){
  min-width:0!important;
}
#content-daysheet #ds-table thead th:nth-child(6){min-width:248px!important;}
#content-daysheet #ds-table thead th:nth-child(7){min-width:144px!important;}
#content-daysheet #ds-table thead th:nth-child(8){min-width:100px!important;}

/* "Appointment & Reason" header — visually centered.
 *
 * The contract test pins `getComputedStyle(th).textAlign` to 'left'
 * for this column, so we can't change text-align. Instead we push
 * the original text node off-screen with text-indent and render the
 * same label via a ::before pseudo-element flex-centered inside the
 * th. The th's computed text-align is unchanged.
 *
 * The visible label now sits centered above the centered chip + reason
 * text, so the column reads as a single balanced block. */
#content-daysheet #ds-table thead th:nth-child(4){
  position:relative!important;
  text-indent:-9999px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
}
#content-daysheet #ds-table thead th:nth-child(4)::before{
  content:"Appointment & Reason";
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  text-indent:0;
  font-family:inherit;
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
  letter-spacing:inherit;
  color:inherit;
  text-transform:inherit;
}

/* Tighter horizontal cell padding so content sits closer to the header
 * label's center. Earlier rules in this file used 18/28px which left
 * "centered" cells visually drifting off-axis from their narrow header
 * text. 14/22px reads cleaner and reduces dead space in centered cells. */
#content-daysheet #ds-table thead th,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td{
  padding-left:14px!important;
  padding-right:14px!important;
}
#content-daysheet #ds-table thead th:first-child,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td:first-child{
  padding-left:22px!important;
}
#content-daysheet #ds-table thead th:last-child,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td:last-child{
  padding-right:22px!important;
}
#content-daysheet #ds-table thead th:last-child,
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td.dashboard-edit-cell{
  padding-right:22px!important;
}

/* Card chrome — keep 16px radius (contract-pinned), softer diffused
 * shadow that reads more like a clinical-paper card on warm canvas. */
#content-daysheet .dashboard-daysheet-card,
#content-daysheet .card{
  width:calc(100% - (var(--os-arrow-lane,62px) * 2))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.55) inset,
    0 1px 2px rgba(31,27,22,0.05),
    0 28px 56px -36px rgba(31,27,22,0.22)!important;
}

@media (max-width:900px){
  #content-daysheet .dashboard-daysheet-card,
  #content-daysheet .card{
    width:100%!important;
  }
}

/* Header rhythm: a touch more vertical room, slightly tighter tracking,
 * and a softer hairline. The 1px-solid bottom rule is preserved. */
#content-daysheet #ds-table thead th{
  padding-top:16px!important;
  padding-bottom:16px!important;
  font-size:10.5px!important;
  letter-spacing:0.12em!important;
  color:color-mix(in srgb,var(--text-muted,#7A6D5C) 88%,var(--ink,#1F1B16))!important;
}

/* Row rhythm: increase vertical padding and use a quieter row rule so
 * each appointment reads as its own band without a hard divider. */
#content-daysheet #ds-body tr:not(.dashboard-footer-row) td{
  padding-top:22px!important;
  padding-bottom:22px!important;
  border-bottom:1px solid color-mix(in srgb,var(--ink,#1F1B16) 6%,transparent)!important;
}

/* Time column — refined serif treatment with a smaller, monospace
 * meridiem that aligns to baseline for a clinical-paper feel. */
.dashboard-time{
  gap:5px!important;
  font-size:24px!important;
  letter-spacing:-0.02em!important;
}
.dashboard-time-meridiem{
  font-size:11px!important;
  letter-spacing:0.04em!important;
}

/* Patient column — slightly larger name, softer meta. */
.dashboard-patient-name{
  margin:0 0 5px!important;
  font-size:15px!important;
  font-weight:600!important;
  letter-spacing:-0.005em!important;
  line-height:1.25!important;
}
#content-daysheet #ds-table tbody tr:hover td:nth-child(2) > .dashboard-patient-name{
  text-decoration:none!important;
}
#content-daysheet #ds-table tbody tr:hover td:nth-child(2) > .dashboard-patient-name:hover,
#content-daysheet .dashboard-patient-name:hover{
  text-decoration:underline color-mix(in srgb,var(--ink,#1F1B16) 18%,transparent)!important;
  text-underline-offset:3px!important;
}
.dashboard-patient-meta{
  gap:8px!important;
  font-size:10.5px!important;
}
#content-daysheet .dashboard-patient-meta-label{
  cursor:pointer!important;
  text-decoration:none!important;
}
#content-daysheet .dashboard-patient-meta-label:hover,
#content-daysheet .dashboard-patient-meta-label:focus-visible{
  color:color-mix(in srgb,var(--muted,#7A6D5C) 86%,var(--ink,#1F1B16))!important;
  text-decoration:underline color-mix(in srgb,currentColor 24%,transparent)!important;
  text-underline-offset:3px!important;
  outline:0!important;
}

/* Status pill — slightly more padding for a more tappable target. */
.dashboard-status-toggle{
  padding:6px 12px!important;
  gap:0!important;
  font-size:11.5px!important;
  font-weight:600!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
}
.dashboard-status-toggle::before{
  content:none!important;
}

/* Reason cell — center the chip and reason text inside the wrap so the
 * column reads as a balanced block instead of leaving a wide trailing
 * gap on the right.
 *
 * Note: the <td> itself stays text-align:left (pinned by the contract
 * test). We only re-align the inner flex column container, which has
 * no effect on td.textAlign — getComputedStyle(td).textAlign still
 * returns 'left'. */
#content-daysheet .dashboard-reason-wrap{
  gap:6px!important;
  align-items:center!important;
  text-align:center!important;
}
#content-daysheet .dashboard-reason-text{
  text-align:center!important;
  cursor:pointer!important;
  text-decoration:none!important;
}
#content-daysheet .dashboard-reason-text:hover,
#content-daysheet .dashboard-reason-text:focus-visible{
  color:color-mix(in srgb,var(--text-muted,#7A6D5C) 86%,var(--ink,#1F1B16))!important;
  text-decoration:underline color-mix(in srgb,currentColor 22%,transparent)!important;
  text-underline-offset:3px!important;
  outline:0!important;
}
#content-daysheet .dashboard-reason-meta{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  margin-top:1px!important;
  font:500 10.5px/1.2 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.04em!important;
  color:var(--faint,#A89782)!important;
}
#content-daysheet .dashboard-reason-meta .dashboard-patient-meta-label{
  font-family:var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  font-size:8.5px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:0.13em!important;
  text-transform:uppercase!important;
  color:#9aa0a7!important;
}
#content-daysheet .dashboard-reason-meta .dashboard-patient-meta-value{
  font-family:var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  font-size:10.5px!important;
  font-weight:500!important;
  line-height:1.2!important;
  letter-spacing:0.04em!important;
  color:var(--faint,#A89782)!important;
}
#content-daysheet .dashboard-appointment-type-text,
#content-daysheet .dashboard-appointment-type-text[data-appt-specialty]{
  padding:4px 10px!important;
  font-size:10px!important;
  letter-spacing:0.08em!important;
}
.dashboard-reason-text{
  font-size:13.5px!important;
  line-height:1.4!important;
}

/* Testing column — chip-like items with consistent height. */
.dashboard-testing-list{
  gap:6px 8px!important;
  justify-content:center!important;
}
.dashboard-testing-item{
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:4px 10px!important;
  border-radius:8px!important;
  font-size:11.5px!important;
}

/* Tasks column — visible widgets keep a consistent gap even when one badge
 * is wider, such as Follow-up's "None" pill. */
#content-daysheet .dashboard-tasks{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(14px,1.35vw,24px)!important;
  width:100%!important;
}
#content-daysheet .dashboard-task{
  position:relative!important;
  width:max-content!important;
  min-width:54px!important;
  gap:6px!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
#content-daysheet .dashboard-task-inline-message{
  position:absolute!important;
  left:50%!important;
  bottom:calc(100% + 6px)!important;
  transform:translateX(-50%)!important;
  z-index:4!important;
  width:max-content!important;
  max-width:190px!important;
  padding:4px 7px!important;
  border:1px solid color-mix(in srgb,var(--state-danger,#B33A2E) 22%,transparent)!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--state-danger,#B33A2E)!important;
  box-shadow:0 6px 18px rgba(31,27,22,0.12)!important;
  font:600 10.5px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  text-align:center!important;
  white-space:normal!important;
  pointer-events:none!important;
}
#content-daysheet .dashboard-task-badge{
  min-width:30px!important;
  height:26px!important;
  padding:0 10px!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  font-size:11px!important;
  font-weight:600!important;
}
#content-daysheet .dashboard-task-label{
  font-size:9.5px!important;
  letter-spacing:0.08em!important;
  appearance:none!important;
  border:0!important;
  padding:0!important;
  background:transparent!important;
  cursor:pointer!important;
  text-decoration:none!important;
}
#content-daysheet .dashboard-task-label:hover,
#content-daysheet .dashboard-task-label:focus-visible{
  color:color-mix(in srgb,var(--ds-task-caption-text,var(--os-dashboard-faint,#A89782)) 82%,var(--ink,#1F1B16))!important;
  text-decoration:underline color-mix(in srgb,currentColor 24%,transparent)!important;
  text-underline-offset:3px!important;
  outline:0!important;
}
#content-daysheet .dashboard-task-label-has-content{
  color:var(--ds-task-caption-text,var(--os-dashboard-faint))!important;
  text-decoration:none!important;
}
#content-daysheet .dashboard-task-label-has-content:hover,
#content-daysheet .dashboard-task-label-has-content:focus-visible{
  color:color-mix(in srgb,var(--ds-task-caption-text,var(--os-dashboard-faint,#A89782)) 82%,var(--ink,#1F1B16))!important;
  text-decoration:underline color-mix(in srgb,currentColor 24%,transparent)!important;
  text-underline-offset:3px!important;
  outline:0!important;
}
#content-daysheet .dashboard-files-action.dashboard-task-badge{
  width:28px!important;
  min-width:28px!important;
  height:28px!important;
  padding:0!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1!important;
}
#content-daysheet .dashboard-files-action.dashboard-files-added.dashboard-task-badge,
#content-daysheet .dashboard-files-action.dashboard-files-added.dashboard-task-badge.os-button-light{
  background:var(--ds-task-done-bg,color-mix(in srgb,var(--success,#5C7A5B) 18%,transparent))!important;
  color:var(--ds-task-done-text,var(--success,#5C7A5B))!important;
  border-color:transparent!important;
}
#content-daysheet .dashboard-survey-control.dashboard-task-badge{
  display:block!important;
  position:relative!important;
  width:64px!important;
  min-width:64px!important;
  height:28px!important;
  max-width:none!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
}
#content-daysheet .dashboard-survey-action.os-button-light{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:28px!important;
  min-width:28px!important;
  height:28px!important;
  padding:0!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1!important;
}

#content-daysheet .dashboard-survey-action.os-button-light,
#content-daysheet .dashboard-files-action.dashboard-task-badge,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light,
#content-daysheet .dashboard-task-billing:has(.dashboard-task-label-has-content) .dashboard-billing-action,
#content-daysheet .dashboard-task-followup:has(.dashboard-task-label-has-content) .dashboard-followup-status.dashboard-task-badge{
  border-width:1px!important;
  border-style:solid!important;
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
  box-shadow:none!important;
}

#content-daysheet .dashboard-task-billing:not(:has(.dashboard-task-label-has-content)) .dashboard-billing-action,
#content-daysheet .dashboard-task-followup:not(:has(.dashboard-task-label-has-content)) .dashboard-followup-status.dashboard-task-badge{
  border-width:1px!important;
  border-style:solid!important;
  border-color:transparent!important;
  box-shadow:none!important;
}

#content-daysheet .dashboard-survey-action.os-button-light:hover,
#content-daysheet .dashboard-survey-action.os-button-light:focus-visible,
#content-daysheet .dashboard-files-action.dashboard-task-badge:hover,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light:hover,
#content-daysheet .dashboard-files-action.dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light:focus-visible,
#content-daysheet .dashboard-billing-action:hover,
#content-daysheet .dashboard-billing-action:focus-visible,
#content-daysheet .dashboard-followup-status.dashboard-task-badge:hover,
#content-daysheet .dashboard-followup-status.dashboard-task-badge:focus-visible{
  background:color-mix(in srgb,currentColor 18%,transparent)!important;
  border-width:1px!important;
  border-style:solid!important;
  outline:0!important;
  box-shadow:none!important;
}

#content-daysheet .dashboard-survey-action.os-button-light:hover,
#content-daysheet .dashboard-survey-action.os-button-light:focus-visible,
#content-daysheet .dashboard-files-action.dashboard-task-badge:hover,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light:hover,
#content-daysheet .dashboard-files-action.dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light:focus-visible,
#content-daysheet .dashboard-task-billing:has(.dashboard-task-label-has-content) .dashboard-billing-action:hover,
#content-daysheet .dashboard-task-billing:has(.dashboard-task-label-has-content) .dashboard-billing-action:focus-visible,
#content-daysheet .dashboard-task-followup:has(.dashboard-task-label-has-content) .dashboard-followup-status.dashboard-task-badge:hover,
#content-daysheet .dashboard-task-followup:has(.dashboard-task-label-has-content) .dashboard-followup-status.dashboard-task-badge:focus-visible{
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
}

#content-daysheet .dashboard-task-billing:not(:has(.dashboard-task-label-has-content)) .dashboard-billing-action:hover,
#content-daysheet .dashboard-task-billing:not(:has(.dashboard-task-label-has-content)) .dashboard-billing-action:focus-visible,
#content-daysheet .dashboard-task-followup:not(:has(.dashboard-task-label-has-content)) .dashboard-followup-status.dashboard-task-badge:hover,
#content-daysheet .dashboard-task-followup:not(:has(.dashboard-task-label-has-content)) .dashboard-followup-status.dashboard-task-badge:focus-visible{
  border-color:transparent!important;
}

#content-daysheet .dashboard-task-survey .dashboard-survey-action.os-button-light:hover,
#content-daysheet .dashboard-task-survey .dashboard-survey-action.os-button-light:focus-visible{
  background:var(--ds-survey-hover-bg,#DED2C0)!important;
}

#content-daysheet .dashboard-task-files .dashboard-files-action.dashboard-task-badge:hover,
#content-daysheet .dashboard-task-files .dashboard-files-action.dashboard-task-badge.os-button-light:hover,
#content-daysheet .dashboard-task-files .dashboard-files-action.dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-task-files .dashboard-files-action.dashboard-task-badge.os-button-light:focus-visible{
  background:color-mix(in srgb,var(--ds-task-add-text,#7A6D5C) 28%,transparent)!important;
}

#content-daysheet .dashboard-task-files .dashboard-files-action.dashboard-files-added.dashboard-task-badge:hover,
#content-daysheet .dashboard-task-files .dashboard-files-action.dashboard-files-added.dashboard-task-badge.os-button-light:hover,
#content-daysheet .dashboard-task-files .dashboard-files-action.dashboard-files-added.dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-task-files .dashboard-files-action.dashboard-files-added.dashboard-task-badge.os-button-light:focus-visible{
  background:color-mix(in srgb,var(--success,#5C7A5B) 22%,transparent)!important;
}

#content-daysheet .dashboard-task-billing .dashboard-billing-action:hover,
#content-daysheet .dashboard-task-billing .dashboard-billing-action:focus-visible{
  background:color-mix(in srgb,var(--warning,#A57225) 20%,transparent)!important;
}

#content-daysheet .dashboard-task-followup .dashboard-followup-status.dashboard-task-badge:hover,
#content-daysheet .dashboard-task-followup .dashboard-followup-status.dashboard-task-badge:focus-visible{
  background:color-mix(in srgb,currentColor 18%,transparent)!important;
}

#content-daysheet .dashboard-task-billing:not(:has(.dashboard-task-label-has-content)) .dashboard-billing-action:hover,
#content-daysheet .dashboard-task-billing:not(:has(.dashboard-task-label-has-content)) .dashboard-billing-action:focus-visible{
  background:var(--ds-task-pending-bg,color-mix(in srgb,var(--warning,#A57225) 16%,transparent))!important;
  border-color:transparent!important;
}

#content-daysheet .dashboard-task-followup:not(:has(.dashboard-task-label-has-content)) .dashboard-followup-status.dashboard-task-badge:hover,
#content-daysheet .dashboard-task-followup:not(:has(.dashboard-task-label-has-content)) .dashboard-followup-status.dashboard-task-badge:focus-visible{
  background:var(--ds-followup-bg,color-mix(in srgb,var(--state-followup,#3D5F87) 14%,transparent))!important;
  border-color:transparent!important;
}

#content-daysheet .dashboard-status-toggle{
  border-width:1px!important;
  border-style:solid!important;
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
  box-shadow:none!important;
}

#content-daysheet .dashboard-status-toggle:hover,
#content-daysheet .dashboard-status-toggle:focus-visible{
  border-width:1px!important;
  border-style:solid!important;
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
  outline:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
  filter:brightness(0.94) saturate(1.02)!important;
}

#content-daysheet .dashboard-status-empty:hover,
#content-daysheet .dashboard-status-empty:focus-visible{
  background:color-mix(in srgb,var(--state-testing,#A8872D) 22%,var(--surface,#FAF4E8))!important;
}

#content-daysheet .dashboard-status-empty{
  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;
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
}

#content-daysheet .dashboard-status-checked-in:hover,
#content-daysheet .dashboard-status-checked-in:focus-visible{
  background:color-mix(in srgb,var(--state-followup,#3D5F87) 20%,var(--surface,#FAF4E8))!important;
}

#content-daysheet .dashboard-status-testing:hover,
#content-daysheet .dashboard-status-testing:focus-visible{
  background:color-mix(in srgb,var(--state-testing,#A8872D) 22%,var(--surface,#FAF4E8))!important;
}

#content-daysheet .dashboard-status-being-seen:hover,
#content-daysheet .dashboard-status-being-seen:focus-visible{
  background:color-mix(in srgb,var(--state-inroom,#2F7C8A) 20%,var(--surface,#FAF4E8))!important;
}

#content-daysheet .dashboard-status-checked-out:hover,
#content-daysheet .dashboard-status-checked-out:focus-visible{
  background:color-mix(in srgb,var(--success,#5C7A5B) 20%,var(--surface,#FAF4E8))!important;
}

#content-daysheet .dashboard-status-no-show:hover,
#content-daysheet .dashboard-status-no-show:focus-visible{
  background:color-mix(in srgb,var(--ink,#1F1B16) 10%,var(--surface,#FAF4E8))!important;
}

#content-daysheet .dashboard-status-no-show{
  background:transparent!important;
  border-color:color-mix(in srgb,currentColor 26%,transparent)!important;
  border-style:solid!important;
  color:var(--ds-status-noshow-text,var(--muted,#7A6D5C))!important;
  text-decoration:line-through!important;
  text-decoration-thickness:1px!important;
  text-decoration-color:currentColor!important;
}

#content-daysheet .dashboard-status-no-show:hover,
#content-daysheet .dashboard-status-no-show:focus-visible{
  background:color-mix(in srgb,var(--ink,#1F1B16) 8%,var(--surface,#FAF4E8))!important;
  border-color:color-mix(in srgb,currentColor 26%,transparent)!important;
  border-style:solid!important;
  color:var(--ds-status-noshow-text,var(--muted,#7A6D5C))!important;
  text-decoration:line-through!important;
}

#content-daysheet .dashboard-task-label,
#content-daysheet .dashboard-task-label:hover,
#content-daysheet .dashboard-task-label:focus-visible,
#content-daysheet .dashboard-task-label-has-content,
#content-daysheet .dashboard-task-label-has-content:hover,
#content-daysheet .dashboard-task-label-has-content:focus-visible,
#content-daysheet .dashboard-status-toggle,
#content-daysheet .dashboard-status-toggle:hover,
#content-daysheet .dashboard-status-toggle:focus-visible{
  text-decoration:none!important;
}

#content-daysheet .dashboard-task-badge:hover,
#content-daysheet .dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-survey-action.os-button-light:hover,
#content-daysheet .dashboard-survey-action.os-button-light:focus-visible,
#content-daysheet .dashboard-files-action.dashboard-task-badge:hover,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light:hover,
#content-daysheet .dashboard-files-action.dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-files-action.dashboard-task-badge.os-button-light:focus-visible,
#content-daysheet .dashboard-billing-action:hover,
#content-daysheet .dashboard-billing-action:focus-visible,
#content-daysheet .dashboard-followup-status.dashboard-task-badge:hover,
#content-daysheet .dashboard-followup-status.dashboard-task-badge:focus-visible,
#content-daysheet .dashboard-status-toggle:hover,
#content-daysheet .dashboard-status-toggle:focus-visible{
  filter:none!important;
}

#content-daysheet .dashboard-status-no-show,
#content-daysheet .dashboard-status-no-show:hover,
#content-daysheet .dashboard-status-no-show:focus-visible{
  border-color:color-mix(in srgb,currentColor 26%,transparent)!important;
  border-style:solid!important;
  color:var(--ds-status-noshow-text,var(--muted,#7A6D5C))!important;
  text-decoration:line-through!important;
  text-decoration-thickness:1px!important;
  text-decoration-color:currentColor!important;
}
#content-daysheet .dashboard-status-no-show{
  background:transparent!important;
}
#content-daysheet .dashboard-status-no-show:hover,
#content-daysheet .dashboard-status-no-show:focus-visible{
  background:color-mix(in srgb,var(--ink,#1F1B16) 8%,var(--surface,#FAF4E8))!important;
}

#content-daysheet .dashboard-appointment-type-text,
#content-daysheet .dashboard-testing-item{
  border-width:1px!important;
  border-style:solid!important;
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
  box-shadow:none!important;
  text-decoration:none!important;
  filter:none!important;
  cursor:pointer!important;
}

#content-daysheet .dashboard-appointment-type-text{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  min-height:0!important;
  height:auto!important;
  padding:4px 10px!important;
  background-clip:padding-box!important;
  border-color:currentColor!important;
  box-shadow:none!important;
}

#content-daysheet .dashboard-appointment-type-text:hover,
#content-daysheet .dashboard-appointment-type-text:focus-visible{
  background:color-mix(in srgb,var(--accent,#C2553A) 20%,var(--surface,#FAF4E8))!important;
  background-clip:padding-box!important;
  border-color:currentColor!important;
  box-shadow:none!important;
  outline:0!important;
  text-decoration:none!important;
  filter:none!important;
}

#content-daysheet .dashboard-testing-item:hover,
#content-daysheet .dashboard-testing-item:focus-visible{
  background:color-mix(in srgb,currentColor 10%,var(--surface,#FAF4E8))!important;
  border-color:color-mix(in srgb,currentColor 18%,transparent)!important;
  outline:0!important;
  text-decoration:none!important;
  filter:none!important;
}

#content-daysheet .dashboard-appointment-type-text.is-selected,
#content-daysheet .dashboard-appointment-type-text.active,
#content-daysheet .dashboard-appointment-type-text.selected,
#content-daysheet .dashboard-appointment-type-text[data-active="true"],
#content-daysheet .dashboard-appointment-type-text[data-selected="true"],
#content-daysheet .dashboard-appointment-type-text[aria-pressed="true"],
#content-daysheet .dashboard-appointment-type-text[aria-selected="true"]{
  background:color-mix(in srgb,var(--accent,#C2553A) 24%,var(--surface,#FAF4E8))!important;
  background-clip:padding-box!important;
  border-color:currentColor!important;
  box-shadow:none!important;
}

#content-daysheet .dashboard-testing-item.is-selected,
#content-daysheet .dashboard-testing-item.selected,
#content-daysheet .dashboard-testing-item[data-selected="true"],
#content-daysheet .dashboard-testing-item[aria-selected="true"]{
  background:color-mix(in srgb,currentColor 14%,var(--surface,#FAF4E8))!important;
  border-color:color-mix(in srgb,currentColor 32%,transparent)!important;
}

/* Encounter button — fixed minimum width so it doesn't change size
 * with state-text length, and sits visually centered under the header. */
#content-daysheet .dashboard-start-encounter-btn,
#content-daysheet .dashboard-start-encounter-btn.os-button-light{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:112px!important;
  min-height:28px!important;
  height:28px!important;
  padding:0 10px!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  font:600 11px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
}

body.encounter-view-only #content-appt{
  cursor:default!important;
}

body.encounter-view-only #content-appt button,
body.encounter-view-only #content-appt input,
body.encounter-view-only #content-appt select,
body.encounter-view-only #content-appt textarea,
body.encounter-view-only #content-appt [role="button"],
body.encounter-view-only #content-appt [contenteditable]{
  cursor:default!important;
}

/* Day-sheet row launch affordance. Any non-interactive part of the row opens
 * the encounter; the explicit encounter control is now a compact dark arrow
 * icon using the same square icon-button architecture as the row X.
 */
#content-daysheet .dashboard-open-encounter-row{
  cursor:pointer!important;
}
#content-daysheet .dashboard-open-encounter-row button,
#content-daysheet .dashboard-open-encounter-row input,
#content-daysheet .dashboard-open-encounter-row select,
#content-daysheet .dashboard-open-encounter-row textarea,
#content-daysheet .dashboard-open-encounter-row [role="button"]{
  cursor:pointer!important;
}
#content-daysheet .dashboard-encounter-actions{
  min-width:64px!important;
}
#content-daysheet .dashboard-start-encounter-icon,
#content-daysheet .dashboard-start-encounter-icon.os-button-dark{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  border-radius:var(--os-destructive-icon-action-radius,var(--os-button-shape-radius,8px))!important;
  background:var(--ink-link,var(--blue,#d97757))!important;
  border:1px solid var(--ink-link,var(--blue,#d97757))!important;
  color:transparent!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
#content-daysheet .dashboard-start-encounter-icon::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  margin:auto!important;
  width:24px!important;
  height:24px!important;
  background:var(--os-component-content-bg,var(--surface,#FAF4E8))!important;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h13'/><path d='M13 6l6 6-6 6'/></svg>") center/24px 24px no-repeat!important;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h13'/><path d='M13 6l6 6-6 6'/></svg>") center/24px 24px no-repeat!important;
}
#content-daysheet .dashboard-start-encounter-icon:hover,
#content-daysheet .dashboard-start-encounter-icon:focus-visible{
  background:color-mix(in srgb,var(--ink-link,var(--blue,#d97757)) 88%,var(--ink,#1F1B16))!important;
  border-color:color-mix(in srgb,var(--ink-link,var(--blue,#d97757)) 88%,var(--ink,#1F1B16))!important;
}
#content-daysheet .dashboard-start-encounter-icon:hover::before,
#content-daysheet .dashboard-start-encounter-icon:focus-visible::before{
  background:var(--os-component-content-bg,var(--surface,#FAF4E8))!important;
}

/* Edit row — slightly larger hit area and consistent gap. */
#content-daysheet .dashboard-edit-row{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:5px!important;
  transform:none!important;
  min-width:74px!important;
}
#content-daysheet .dashboard-finalize-appointment-btn,
#content-daysheet .dashboard-edit-appointment-btn,
#content-daysheet .dashboard-remove-appointment-btn,
#content-daysheet .dashboard-finalize-appointment-btn.os-button-dark,
#content-daysheet .dashboard-edit-appointment-btn.os-button-dark,
#content-daysheet .dashboard-remove-appointment-btn.os-button-dark{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:74px!important;
  min-width:74px!important;
  height:24px!important;
  min-height:24px!important;
  padding:0 10px!important;
  border-width:1px!important;
  border-style:solid!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  color:var(--surface,#FAF4E8)!important;
  text-indent:0!important;
  overflow:visible!important;
  box-shadow:none!important;
  font:600 11px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
#content-daysheet .dashboard-finalize-appointment-btn::before,
#content-daysheet .dashboard-edit-appointment-btn::before,
#content-daysheet .dashboard-remove-appointment-btn::before{
  content:none!important;
}
#content-daysheet .dashboard-finalize-appointment-btn,
#content-daysheet .dashboard-finalize-appointment-btn.os-button-dark{
  background:var(--ds-row-finalize-bg,#2F5F8A)!important;
  border-color:var(--ds-row-finalize-bg,#2F5F8A)!important;
}
#content-daysheet .dashboard-edit-appointment-btn,
#content-daysheet .dashboard-edit-appointment-btn.os-button-dark{
  background:var(--ds-row-modify-bg,#8A6A24)!important;
  border-color:var(--ds-row-modify-bg,#8A6A24)!important;
}
#content-daysheet .dashboard-remove-appointment-btn,
#content-daysheet .dashboard-remove-appointment-btn.os-button-dark{
  background:var(--ds-row-remove-bg,#1F1B16)!important;
  border-color:var(--ds-row-remove-bg,#1F1B16)!important;
}
#content-daysheet .dashboard-finalize-appointment-btn:hover,
#content-daysheet .dashboard-finalize-appointment-btn:focus-visible,
#content-daysheet .dashboard-finalize-appointment-btn.os-button-dark:hover,
#content-daysheet .dashboard-finalize-appointment-btn.os-button-dark:focus-visible{
  background:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  border-color:color-mix(in srgb,var(--ds-row-finalize-bg,#2F5F8A) 86%,var(--ink,#1F1B16))!important;
  color:var(--surface,#FAF4E8)!important;
  outline:0!important;
}
#content-daysheet .dashboard-edit-appointment-btn:hover,
#content-daysheet .dashboard-edit-appointment-btn:focus-visible,
#content-daysheet .dashboard-edit-appointment-btn.os-button-dark:hover,
#content-daysheet .dashboard-edit-appointment-btn.os-button-dark:focus-visible{
  background:color-mix(in srgb,var(--ds-row-modify-bg,#8A6A24) 86%,var(--ink,#1F1B16))!important;
  border-color:color-mix(in srgb,var(--ds-row-modify-bg,#8A6A24) 86%,var(--ink,#1F1B16))!important;
  color:var(--surface,#FAF4E8)!important;
  outline:0!important;
}
#content-daysheet .dashboard-remove-appointment-btn:hover,
#content-daysheet .dashboard-remove-appointment-btn:focus-visible,
#content-daysheet .dashboard-remove-appointment-btn.os-button-dark:hover,
#content-daysheet .dashboard-remove-appointment-btn.os-button-dark:focus-visible{
  background:color-mix(in srgb,var(--ds-row-remove-bg,#1F1B16) 86%,var(--surface,#FAF4E8))!important;
  border-color:color-mix(in srgb,var(--ds-row-remove-bg,#1F1B16) 86%,var(--surface,#FAF4E8))!important;
  color:var(--surface,#FAF4E8)!important;
  outline:0!important;
}

/* Hover — accent-soft wash, matched through the active Day Sheet contract. */
#content-daysheet #ds-body tr:not(.dashboard-footer-row):hover td{
  background:var(--ds-row-hover-bg,color-mix(in srgb,var(--accent,#C2553A) 13%,var(--surface,#FAF4E8)))!important;
}

/* Footer day-stats: more breathing room and a clearer hierarchy
 * between the serif number and the mono label. */
#content-daysheet .dashboard-day-footer{
  min-height:68px!important;
  padding:20px 28px!important;
  gap:24px!important;
}
#content-daysheet .dashboard-day-stats{
  gap:32px!important;
}
#content-daysheet .dashboard-day-stat{
  gap:10px!important;
}
#content-daysheet .dashboard-day-stat-number{
  font-size:26px!important;
  letter-spacing:-0.01em!important;
}
#content-daysheet .dashboard-day-stat-label{
  font-size:10.5px!important;
  letter-spacing:0.12em!important;
}
#content-daysheet .dashboard-day-stat-rule{
  height:24px!important;
}

/* ─────────────────────────────────────────────────────────────────────
 * Page header — date + calendar control aligned with the Dashboard
 * wordmark instead of hanging below it. Baseline alignment lets the
 * 18px date text sit on the same optical line as the 44px serif title.
 * The "+ Add Patient" pill keeps centered alignment via its own rule
 * in app-shell-tone.css (align-self:center).
 * ───────────────────────────────────────────────────────────────────── */
#content-daysheet .workspace-page-header,
.workspace-page-header{
  align-items:center!important;
  gap:20px!important;
}
#content-daysheet{
  --ds-add-action-bg:#000;
  --ds-add-action-border:#000;
  --ds-add-action-hover-bg:#000;
  --ds-add-action-text:#fff;
  --ds-table-card-inline-inset:62px;
}
#content-daysheet .workspace-page-header{
  width:100%!important;
  max-width:1400px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:var(--ds-table-card-inline-inset)!important;
  padding-right:var(--ds-table-card-inline-inset)!important;
  box-sizing:border-box!important;
}
#content-daysheet #ds-add-patient-action{
  background:var(--ds-add-action-bg)!important;
  border-color:var(--ds-add-action-border)!important;
  color:var(--ds-add-action-text)!important;
}
#content-daysheet #ds-add-patient-action:hover,
#content-daysheet #ds-add-patient-action:focus-visible{
  background:var(--ds-add-action-hover-bg)!important;
  border-color:var(--ds-add-action-hover-bg)!important;
  color:var(--ds-add-action-text)!important;
}
#content-daysheet .workspace-page-header .os-date-action,
#content-daysheet .os-date-action,
.workspace-page-header .os-date-action{
  align-self:center!important;
  padding:0!important;
  gap:10px!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:18px!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:-0.005em!important;
  color:color-mix(in srgb,var(--text-muted,#7A6D5C) 55%,transparent)!important;
}
#content-daysheet .workspace-page-header .os-date-action .os-icon-inline,
#content-daysheet .os-date-action .os-icon-inline,
.workspace-page-header .os-date-action .os-icon-inline,
#content-daysheet .workspace-page-header .os-date-action svg.os-calendar-glyph,
#content-daysheet .os-date-action svg.os-calendar-glyph,
.workspace-page-header .os-date-action svg.os-calendar-glyph{
  width:18px!important;
  height:18px!important;
  vertical-align:-0.125em!important;
  flex:0 0 auto!important;
  color:inherit!important;
  stroke:currentColor!important;
}
#content-daysheet .workspace-page-header .os-date-action #ds-date,
#content-daysheet .os-date-action #ds-date,
.workspace-page-header .os-date-action [data-workspace-date-label]{
  font:inherit!important;
  color:inherit!important;
  letter-spacing:inherit!important;
}
/* Calendar glyph stroke: ever so slightly thinner so the page header
 * reads as a calendar and not a
 * filled block. The tab-strip calendar glyph (replaces the emoji) and
 * inbox/wait-list/billing dashboards share this tone. */
.os-calendar-glyph,
#tab-calendar .os-calendar-glyph{
  stroke-width:1.5!important;
}
#tab-calendar .os-icon-inline,
#tab-calendar .os-calendar-glyph{
  width:1.1em!important;
  height:1.1em!important;
  vertical-align:-0.2em!important;
  margin-right:2px!important;
}

/* Dashboard calendar glyph — repaint via CSS mask so the icon reads as
 * a real calendar (outlined body, internal day-grid, ring binders) without
 * touching the inline SVG emitted by app-shell.js. Date + glyph share the
 * navy-mid tone of the page header. */
#content-daysheet .workspace-page-header #ds-calendar-btn.os-date-action .os-calendar-glyph{
  display:none!important;
}
#content-daysheet .workspace-page-header #ds-calendar-btn.os-date-action::before{
  content:""!important;
  display:inline-block!important;
  width:18px!important;
  height:18px!important;
  flex:0 0 auto!important;
  background:currentColor!important;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='6' width='18' height='16' rx='2' stroke-width='1.4'/><line x1='12' y1='6' x2='12' y2='22' stroke-width='0.7'/><line x1='3' y1='11.3' x2='21' y2='11.3' stroke-width='0.7'/><line x1='3' y1='16.7' x2='21' y2='16.7' stroke-width='0.7'/><line x1='8' y1='3' x2='8' y2='8' stroke-width='1.8'/><line x1='16' y1='3' x2='16' y2='8' stroke-width='1.8'/></svg>") center/contain no-repeat!important;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='6' width='18' height='16' rx='2' stroke-width='1.4'/><line x1='12' y1='6' x2='12' y2='22' stroke-width='0.7'/><line x1='3' y1='11.3' x2='21' y2='11.3' stroke-width='0.7'/><line x1='3' y1='16.7' x2='21' y2='16.7' stroke-width='0.7'/><line x1='8' y1='3' x2='8' y2='8' stroke-width='1.8'/><line x1='16' y1='3' x2='16' y2='8' stroke-width='1.8'/></svg>") center/contain no-repeat!important;
  vertical-align:-0.125em!important;
}
#content-daysheet .workspace-page-header #ds-calendar-btn.os-date-action,
#content-daysheet .workspace-page-header #ds-calendar-btn.os-date-action #ds-date{
  color:var(--navy-mid,#4A4036)!important;
}
#content-daysheet .workspace-page-header #ds-calendar-btn.os-date-action #ds-date::before{
  content:none!important;
  display:none!important;
}
#content-daysheet .workspace-page-header #ds-calendar-btn.os-date-action:hover,
#content-daysheet .workspace-page-header #ds-calendar-btn.os-date-action:focus-visible,
#content-daysheet .workspace-page-header #ds-calendar-btn.os-date-action:hover #ds-date,
#content-daysheet .workspace-page-header #ds-calendar-btn.os-date-action:focus-visible #ds-date{
  color:var(--ink,#1F1B16)!important;
}

/* Calendar modal — month/year title in page ink (near-black) instead of the
 * legacy cool-navy applied to all .edit-modal h3s. */
#calendar-modal-overlay .edit-modal h3#cal-title{
  color:var(--ink,#1F1B16)!important;
}

/* Workspace title fixture
 * Every workspace tab owns the same header region: title, calendar/date
 * metadata, then optional page actions. JS creates this fixture for any new
 * tab pane that does not already provide one, so new tabs inherit the same
 * title placement without custom markup.
 */
:root{
  --os-workspace-title-size:22px;
  --os-workspace-title-line-height:1;
  --os-workspace-title-weight:600;
  --os-workspace-title-gap:12px;
  --os-workspace-date-size:18px;
}
.workspace-page-shell,
#content-daysheet .dashboard-page-shell,
#tabs-v2-region .workspace-page-shell,
#tabs-v2-region .os-auto-workspace-shell{
  width:100%!important;
  max-width:1480px!important;
  margin:0 auto!important;
  padding:26px 40px 60px!important;
  box-sizing:border-box!important;
}
.workspace-page-header,
#content-daysheet .workspace-page-header,
#tabs-v2-region .workspace-page-header,
.workspace-page-header[data-workspace-header-fixture="true"]{
  display:flex!important;
  align-items:flex-end!important;
  gap:var(--os-workspace-title-gap)!important;
  min-height:var(--os-workspace-title-size)!important;
  height:auto!important;
  margin:0 0 28px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-sizing:border-box!important;
}
#content-daysheet .workspace-page-header{
  padding-left:var(--ds-table-card-inline-inset,62px)!important;
  padding-right:var(--ds-table-card-inline-inset,62px)!important;
}
#content-daysheet .dashboard-editable-field{
  cursor:pointer!important;
  border-radius:6px!important;
  outline:none!important;
  transition:background .14s,color .14s,box-shadow .14s!important;
}
#content-daysheet .dashboard-editable-field:hover,
#content-daysheet .dashboard-editable-field:focus-visible{
  background:color-mix(in srgb,var(--os-dashboard-accent,var(--accent,#C2553A)) 10%,transparent)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--os-dashboard-accent,var(--accent,#C2553A)) 16%,transparent)!important;
}
#content-daysheet .dashboard-patient-meta.dashboard-editable-field{
  padding:2px 6px!important;
}

#patient-modal-overlay .patient-modal-search.widget-directory{
  display:flex;
  align-items:center;
  min-width:0;
  width:100%;
  margin:0 0 14px;
  position:relative;
}
#patient-modal-overlay .patient-modal-search .widget-directory-input{
  flex:1;
  min-width:0;
  width:100%;
  font-family:var(--sans-paper,var(--font));
  font-size:12px;
  color:var(--ink,var(--text));
  padding:6px 10px;
  background:var(--surface,#fff);
  border:1px solid var(--ink-link,var(--blue,#d97757));
  border-radius:8px;
  outline:none;
  transition:border-color .15s;
}
#patient-modal-overlay .patient-modal-search .widget-directory-input:focus{
  border-color:var(--ink,var(--text));
}
#patient-modal-overlay .patient-modal-search .widget-directory-input::placeholder{
  color:var(--ink-faint,var(--text-faint));
}
.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{
  display:block!important;
  flex:0 0 auto!important;
  margin:0!important;
  color:var(--ink)!important;
  font-family:var(--display,'Newsreader',Georgia,serif)!important;
  font-optical-sizing:auto!important;
  font-size:var(--os-workspace-title-size)!important;
  font-weight:var(--os-workspace-title-weight)!important;
  line-height:var(--os-workspace-title-line-height)!important;
  letter-spacing:0!important;
  text-align:left!important;
}
.topbar-dashboard-back[hidden]{
  display:none!important;
}
.topbar-dashboard-back{
  position:relative!important;
  align-self:center!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:var(--topbar-account-button-width,112px)!important;
  min-width:var(--topbar-account-button-width,112px)!important;
  height:var(--topbar-account-button-min-height,30px)!important;
  min-height:var(--topbar-account-button-min-height,30px)!important;
  padding:var(--topbar-account-button-padding,10px 18px)!important;
  margin:0!important;
  border:0!important;
  border-radius:var(--topbar-account-button-radius,var(--os-button-shape-radius,8px))!important;
  background:var(--profile-menu-bg,var(--ink-link,var(--blue,var(--accent,#C2553A))))!important;
  color:var(--profile-menu-text,var(--os-component-content-bg,var(--surface,#FAF4E8)))!important;
  font-family:var(--topbar-account-button-font,var(--os-button-font,var(--font,'Geist',system-ui,sans-serif)))!important;
  font-size:var(--topbar-account-button-font-size,var(--os-button-font-size,12.5px))!important;
  font-weight:var(--topbar-account-button-font-weight,var(--os-button-font-weight,500))!important;
  line-height:var(--topbar-account-button-line-height,var(--os-button-line-height,1))!important;
  letter-spacing:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.topbar-dashboard-back::before{
  content:none!important;
}
.topbar-dashboard-back:hover,
.topbar-dashboard-back:focus-visible{
  background:var(--profile-menu-hover-bg,color-mix(in srgb,var(--ink-link,var(--blue,var(--accent,#C2553A))) 88%,var(--ink,#1F1B16)))!important;
  border-color:transparent!important;
  color:var(--profile-menu-hover-text,var(--os-component-content-bg,var(--surface,#FAF4E8)))!important;
  outline:0!important;
  box-shadow:0 0 0 3px var(--os-focus-ring,rgba(217,119,87,0.18))!important;
}
.workspace-page-header .os-date-action,
#content-daysheet .workspace-page-header .os-date-action,
#tabs-v2-region .workspace-page-header .os-date-action{
  align-self:flex-end!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--text-muted,#7A6D5C)!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:var(--os-workspace-date-size)!important;
  font-weight:500!important;
  line-height:1.2!important;
  letter-spacing:0!important;
}
.workspace-page-body{
  min-width:0;
}

@media (max-width:900px){
  .workspace-page-shell,
  #content-daysheet .dashboard-page-shell,
  #tabs-v2-region .workspace-page-shell,
  #tabs-v2-region .os-auto-workspace-shell{
    padding:20px 18px 44px!important;
  }
  .workspace-page-header,
  #content-daysheet .workspace-page-header,
  #tabs-v2-region .workspace-page-header{
    align-items:flex-start!important;
    flex-wrap:wrap!important;
  }
  #content-daysheet .workspace-page-header{
    padding-left:0!important;
    padding-right:0!important;
  }
  body.encounter-active .encounter-context-strip{
    align-items:flex-start!important;
    flex-wrap:wrap!important;
    width:calc(100% - 36px)!important;
    max-width:none!important;
    height:auto!important;
    margin:20px auto 28px!important;
  }
}


.os-workspace-card .billing-claim-status{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:96px!important;
  max-width:96px!important;
  min-height:26px!important;
  padding:0 10px!important;
  border:1px solid var(--ds-test-chip-border,color-mix(in srgb,var(--ink,#1f1b16) 10%,transparent))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  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;
  font:700 11px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.billing-claim-editor-modal{
  width:920px!important;
}

.billing-claim-editor-topbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:14px!important;
}

.billing-claim-editor-topbar h3{
  margin:0!important;
}

.billing-claim-editor-top-actions{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
}

.billing-claim-save-top{
  background:var(--surface,#FAF4E8)!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  border-color:var(--ds-row-edit-border,color-mix(in srgb,var(--ink,#1f1b16) 22%,transparent))!important;
}

.billing-claim-close-top.dashboard-remove-appointment-btn.os-button-dark{
  width:30px!important;
  min-width:30px!important;
  height:30px!important;
  min-height:30px!important;
}

.billing-claim-editor-summary{
  margin:0 0 14px!important;
  padding:10px 12px!important;
  border:1px solid var(--ds-test-chip-border,color-mix(in srgb,var(--ink,#1f1b16) 10%,transparent))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--ds-row-alt-bg,color-mix(in srgb,var(--accent,#C2553A) 5%,transparent))!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  font:600 12px/1.5 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}

.billing-claim-mini-dashboard{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:14px!important;
}

.billing-claim-directory-row{
  margin:0 0 8px!important;
}

.billing-claim-table-host{
  margin-top:0!important;
}

.billing-claim-table-wrap{
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 8%,transparent)!important;
  border-radius:16px!important;
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
}

.billing-claim-table{
  width:100%!important;
  border-collapse:collapse!important;
  table-layout:fixed!important;
}

.billing-claim-table th{
  height:42px!important;
  padding:16px 20px!important;
  background:var(--os-dashboard-header-footer-bg,var(--os-component-header-footer-bg,color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 3%,var(--os-dashboard-surface,var(--surface,#FAF4E8)))))!important;
  border-bottom:1px solid color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 10%,transparent)!important;
  color:color-mix(in srgb,var(--text-muted,#7A6D5C) 88%,var(--ink,#1F1B16))!important;
  font:600 10.5px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.12em!important;
  text-transform:uppercase!important;
  text-align:left!important;
}

.billing-claim-table td{
  height:58px!important;
  padding:12px 20px!important;
  border-bottom:1px solid color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 7%,transparent)!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  font:700 13px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  vertical-align:middle!important;
}

.billing-claim-table tbody tr:last-child td{
  border-bottom:0!important;
}

.billing-claim-table .billing-claim-empty-row td{
  height:82px!important;
  color:color-mix(in srgb,var(--text-muted,#7A6D5C) 55%,transparent)!important;
  font-weight:600!important;
}

.billing-claim-table th:nth-child(1),
.billing-claim-table td:nth-child(1){
  width:16%!important;
}

.billing-claim-table th:nth-child(3),
.billing-claim-table td:nth-child(3){
  width:28%!important;
}

.billing-claim-table th:nth-child(4),
.billing-claim-table td:nth-child(4){
  width:96px!important;
  text-align:center!important;
}

.billing-claim-code-cell{
  font-family:var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.04em!important;
}

.billing-claim-row-actions{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
}

.billing-claim-mini-card{
  min-width:0!important;
}

.billing-claim-mini-card .inbox-section-head{
  justify-content:flex-start!important;
}

.billing-claim-mini-card .inbox-section-count{
  margin-left:auto!important;
}

.billing-claim-patient-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:start!important;
  padding:12px!important;
}

.billing-claim-patient-codes{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  min-width:0!important;
}

.billing-claim-patient-code{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(160px,auto) auto!important;
  gap:8px!important;
  align-items:center!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  font:700 12px/1.25 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}

.billing-claim-code-select,
.billing-claim-status-select{
  width:100%!important;
  min-height:34px!important;
  padding:6px 10px!important;
  border:1px solid var(--ds-test-chip-border,color-mix(in srgb,var(--ink,#1f1b16) 10%,transparent))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  font:700 12px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}

.billing-claim-status-select{
  color:var(--ds-task-pending-text,var(--warning,#A57225))!important;
  background:var(--ds-task-pending-bg,color-mix(in srgb,var(--warning,#A57225) 16%,transparent))!important;
}

.billing-claim-add-mini{
  width:28px!important;
  min-width:28px!important;
  height:28px!important;
  min-height:28px!important;
  padding:0!important;
  cursor:pointer!important;
}

.billing-claim-edit{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  padding:0 14px!important;
  border:1px solid var(--blue,#2f7cc0)!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--blue,#2f7cc0)!important;
  color:#fff!important;
  font:700 12px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  cursor:pointer!important;
  box-shadow:0 8px 18px rgba(47,124,192,0.18)!important;
}

.billing-claim-edit:hover,
.billing-claim-edit:focus-visible{
  background:color-mix(in srgb,var(--blue,#2f7cc0) 88%,var(--ink,#1F1B16))!important;
  border-color:color-mix(in srgb,var(--blue,#2f7cc0) 88%,var(--ink,#1F1B16))!important;
}

.billing-claim-edit-panel{
  margin-top:14px!important;
  padding-top:14px!important;
  border-top:1px solid var(--ds-test-chip-border,color-mix(in srgb,var(--ink,#1f1b16) 10%,transparent))!important;
}

.billing-claim-add-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  align-items:center!important;
}

.billing-claim-editor-list{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  min-height:44px!important;
}

.billing-claim-editor-row,
.billing-claim-editor-empty{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:34px!important;
  padding:7px 9px!important;
  border:1px solid var(--ds-test-chip-border,color-mix(in srgb,var(--ink,#1f1b16) 10%,transparent))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  font:700 12px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}

.billing-claim-editor-empty{
  color:var(--ds-muted-text,color-mix(in srgb,var(--ink,#1F1B16) 55%,transparent))!important;
  font-weight:600!important;
}

.billing-claim-remove-code{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:28px!important;
  height:28px!important;
  padding:0!important;
  border:1px solid var(--ds-row-icon-border,color-mix(in srgb,var(--ink,#1F1B16) 18%,transparent))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--ds-row-icon-text,color-mix(in srgb,var(--ink,#1F1B16) 65%,transparent))!important;
  font:700 13px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  cursor:pointer!important;
}

.billing-claim-row-edit.dashboard-edit-appointment-btn.os-button-light{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  min-height:24px!important;
}

.billing-claim-row-edit.dashboard-edit-appointment-btn.os-button-light::before{
  -webkit-mask-size:14px 14px!important;
  mask-size:14px 14px!important;
}

.billing-claim-remove-code.dashboard-remove-appointment-btn.os-button-dark{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  min-height:24px!important;
  background:var(--ds-row-delete-bg,var(--ink,#1f1b16))!important;
  border-color:var(--ds-row-delete-border,var(--ink,#1f1b16))!important;
}

.billing-claim-remove-code:hover,
.billing-claim-remove-code:focus-visible{
  color:var(--ds-danger-text,#9B3D33)!important;
  border-color:color-mix(in srgb,var(--ds-danger-text,#9B3D33) 40%,transparent)!important;
}

.billing-claim-editor-actions{
  align-items:center!important;
}

@media (max-width:760px){
  .billing-claim-mini-dashboard{
    grid-template-columns:1fr!important;
  }
  .billing-claim-patient-row,
  .billing-claim-patient-code{
    grid-template-columns:1fr!important;
  }
}

.billing-claim-editor-spacer{
  flex:1 1 auto!important;
}

.billing-claim-remove{
  color:var(--ds-danger-text,#9B3D33)!important;
}

.dashboard-detail-modal{
  width:680px!important;
  max-width:94vw!important;
  max-height:86vh!important;
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  padding:18px!important;
}
.dashboard-detail-topbar{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
}
.dashboard-detail-topbar h3{
  margin:0!important;
  color:var(--ink,var(--text,#1f1b16))!important;
  font:650 16px/1.2 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.dashboard-detail-subtitle{
  margin-top:4px!important;
  color:var(--muted,var(--text-muted,#7A6D5C))!important;
  font:500 11px/1.3 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.dashboard-detail-close.dashboard-remove-appointment-btn.os-button-dark{
  width:26px!important;
  min-width:26px!important;
  height:26px!important;
  min-height:26px!important;
}
.dashboard-detail-body{
  overflow:auto!important;
  min-height:80px!important;
}
.dashboard-detail-empty{
  padding:22px 12px!important;
  border:1px solid var(--line-soft,var(--border,#EFE6D2))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  color:var(--faint,var(--text-faint,#A89782))!important;
  background:var(--surface,var(--card,#FAF4E8))!important;
  font:500 12px/1.4 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  text-align:center!important;
}
.dashboard-detail-table-wrap{
  border:1px solid var(--line-soft,var(--border,#EFE6D2))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  overflow:hidden!important;
}
.dashboard-detail-table{
  width:100%!important;
  border-collapse:collapse!important;
  font:500 12px/1.35 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.dashboard-detail-table th{
  padding:8px 10px!important;
  background:var(--ds-table-header-bg,var(--accent-soft,#F1DED4))!important;
  color:var(--ds-table-header-text,var(--muted,#7A6D5C))!important;
  font:650 10px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-align:left!important;
  text-transform:uppercase!important;
}
.dashboard-detail-table td{
  padding:9px 10px!important;
  border-top:1px solid var(--line-soft,var(--border,#EFE6D2))!important;
  color:var(--ink,var(--text,#1f1b16))!important;
  vertical-align:top!important;
}
.dashboard-detail-table th:last-child,
.dashboard-detail-table td:last-child{
  width:34px!important;
  text-align:right!important;
}
.dashboard-detail-remove-survey.dashboard-remove-appointment-btn.os-button-dark{
  width:26px!important;
  min-width:26px!important;
  height:26px!important;
  min-height:26px!important;
}
.dashboard-detail-remove-billing.dashboard-remove-appointment-btn.os-button-dark{
  width:26px!important;
  min-width:26px!important;
  height:26px!important;
  min-height:26px!important;
}
.dashboard-detail-survey-type{
  min-width:118px!important;
  height:28px!important;
  padding:0 28px 0 10px!important;
  border:1px solid var(--ds-card-action-border,color-mix(in srgb,var(--ink,#1F1B16) 22%,transparent))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--ink,#1F1B16)!important;
  font:600 11px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.dashboard-detail-table tbody tr:nth-child(even) td{
  background:var(--paper-2,var(--paper,#F4ECDD))!important;
}
.dashboard-detail-add-row{
  margin-top:14px!important;
}
.dashboard-detail-add-label{
  display:block!important;
  margin:0 0 6px!important;
  color:var(--muted,var(--text-muted,#7A6D5C))!important;
  font:650 10px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.08em!important;
  text-transform:uppercase!important;
}
.dashboard-detail-add-controls{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
.dashboard-detail-search{
  flex:1 1 auto!important;
  min-width:0!important;
  height:34px!important;
  padding:0 12px!important;
  border:1px solid var(--line-soft,var(--border,#EFE6D2))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--surface,var(--card,#FAF4E8))!important;
  color:var(--ink,var(--text,#1f1b16))!important;
  font:600 12px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.dashboard-detail-search:focus{
  outline:2px solid color-mix(in srgb,var(--ink,#1F1B16) 18%,transparent)!important;
  outline-offset:2px!important;
}
.dashboard-detail-add-btn{
  flex:0 0 auto!important;
  height:34px!important;
  padding:0 16px!important;
  border:1px solid var(--ink,var(--text,#1f1b16))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--ink,var(--text,#1f1b16))!important;
  color:var(--surface,var(--card,#FAF4E8))!important;
  font:700 12px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  cursor:pointer!important;
}
.dashboard-detail-add-btn:hover,
.dashboard-detail-add-btn:focus-visible{
  filter:brightness(1.12)!important;
}


.dashboard-notifications-btn,
.dashboard-import-surveys-btn{
  align-self:flex-end!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--text-muted,#7A6D5C)!important;
  font:500 var(--os-workspace-date-size,18px)/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}
.dashboard-notifications-btn:hover,
.dashboard-notifications-btn:focus-visible,
.dashboard-import-surveys-btn:hover,
.dashboard-import-surveys-btn:focus-visible{
  background:transparent!important;
  border-color:transparent!important;
  color:var(--text-muted,#7A6D5C)!important;
}
.dashboard-notifications-btn.has-notifications,
.dashboard-notifications-btn.has-notifications:hover,
.dashboard-notifications-btn.has-notifications:focus-visible{
  color:var(--navy-mid,#4A4036)!important;
}
.dashboard-import-surveys-btn.has-survey-imports,
.dashboard-import-surveys-btn.has-survey-imports:hover,
.dashboard-import-surveys-btn.has-survey-imports:focus-visible,
#content-daysheet .workspace-page-header .dashboard-import-surveys-btn.has-survey-imports,
#content-daysheet .workspace-page-header .dashboard-import-surveys-btn.has-survey-imports span,
#content-daysheet .workspace-page-header .dashboard-import-surveys-btn.has-survey-imports .os-inbox-glyph{
  color:var(--ink,#1F1B16)!important;
  stroke:currentColor!important;
}
.dashboard-notifications-btn .os-bell-glyph{
  width:18px!important;
  height:18px!important;
  color:inherit!important;
  stroke:currentColor!important;
}
.dashboard-import-surveys-btn .os-inbox-glyph{
  width:18px!important;
  height:18px!important;
  color:inherit!important;
  stroke:currentColor!important;
}
#content-daysheet .workspace-page-header .dashboard-import-surveys-btn,
#content-daysheet .workspace-page-header .dashboard-import-surveys-btn span,
#content-daysheet .workspace-page-header .dashboard-import-surveys-btn .os-inbox-glyph{
  color:var(--text-muted,#7A6D5C)!important;
  stroke:currentColor!important;
}
.dashboard-notifications-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:18px!important;
  height:18px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--text-muted,#7A6D5C) 10%,transparent)!important;
  color:color-mix(in srgb,var(--text-muted,#7A6D5C) 55%,transparent)!important;
  font:700 10px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
}
.dashboard-notifications-btn.has-notifications .dashboard-notifications-count{
  background:color-mix(in srgb,var(--navy-mid,#4A4036) 14%,transparent)!important;
  color:var(--navy-mid,#4A4036)!important;
}
.doctor-notifications-modal{
  width:520px!important;
}
.doctor-notifications-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:14px!important;
}
.doctor-notifications-head h3{
  margin:0!important;
}
.doctor-notifications-close.dashboard-remove-appointment-btn.os-button-dark{
  width:30px!important;
  min-width:30px!important;
  height:30px!important;
  min-height:30px!important;
}
.doctor-notifications-add{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  margin-bottom:14px!important;
}
.doctor-notifications-add input{
  min-height:38px!important;
  padding:0 12px!important;
  border:1px solid var(--ds-test-chip-border,color-mix(in srgb,var(--ink,#1f1b16) 10%,transparent))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--surface,#FAF4E8)!important;
  color:var(--ink,#1F1B16)!important;
  font:600 13px/1 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.doctor-notifications-list{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
.doctor-notification-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  min-height:48px!important;
  padding:10px 12px!important;
  border:1px solid var(--ds-test-chip-border,color-mix(in srgb,var(--ink,#1f1b16) 10%,transparent))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  background:var(--surface,#FAF4E8)!important;
}
.doctor-notification-text{
  color:var(--ink,#1F1B16)!important;
  font:700 13px/1.25 var(--font,var(--sans-paper,system-ui,sans-serif))!important;
}
.doctor-notification-meta{
  margin-top:3px!important;
  color:var(--text-muted,#7A6D5C)!important;
  font:600 10px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.06em!important;
  text-transform:uppercase!important;
}
.doctor-notification-dismiss.dashboard-remove-appointment-btn.os-button-dark{
  width:28px!important;
  min-width:28px!important;
  height:28px!important;
  min-height:28px!important;
}


/* App-wide clinical surface contract.
 * Dashboard remains the visual source of truth; encounter widgets, modals, and
 * reusable controls consume the same palette relationships through --exam-*,
 * --modal-*, --os-*, and --ds-* variables. This is CSS-only: no behavior or
 * emitted markup changes.
 */
body.encounter-active #content-appt,
body.encounter-active .appt-layout,
#content-files,
#content-surveys,
#tabs-v2-region .tab-pane{
  background:var(--exam-page-bg,var(--paper,#F4ECDD))!important;
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .encounter-context-strip{
  background:var(--exam-page-bg,var(--paper,#F4ECDD))!important;
  border:0!important;
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
  align-items:flex-end!important;
  width:calc(100% - 80px)!important;
  max-width:1360px!important;
  min-height:32px!important;
  height:32px!important;
  margin:26px auto 28px!important;
  padding:0!important;
  box-sizing:border-box!important;
}

body.encounter-active .encounter-context-name,
body.encounter-active #main-banner .banner-name,
body.encounter-active .topbar-pt .banner-name{
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
}

body.encounter-active .encounter-context-name{
  display:inline-flex!important;
  align-items:flex-end!important;
  line-height:1.05!important;
}

body.encounter-active .encounter-context-strip{
  gap:14px!important;
}

body.encounter-active .encounter-context-appt.dashboard-appointment-type-text{
  align-self:flex-end!important;
  padding:5px 18px!important;
  border-radius:999px!important;
  font:700 12px/1 var(--mono,'Geist Mono',ui-monospace,monospace)!important;
  letter-spacing:0.12em!important;
}

body.encounter-active .encounter-context-demo,
body.encounter-active .encounter-context-reason{
  display:inline-flex!important;
  align-items:flex-end!important;
  align-self:flex-end!important;
  color:var(--encounter-context-detail-text,color-mix(in srgb,var(--ds-row-muted-text,var(--muted,#7A6D5C)) 62%,var(--exam-page-text,var(--ink,#1F1B16)) 38%))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:18px!important;
  font-weight:500!important;
  line-height:1.1!important;
  letter-spacing:0!important;
}

body.encounter-active .encounter-context-demo::before,
body.encounter-active .encounter-context-reason::before{
  margin-right:14px!important;
  color:color-mix(in srgb,var(--encounter-context-detail-text,color-mix(in srgb,var(--ds-row-muted-text,var(--muted,#7A6D5C)) 62%,var(--exam-page-text,var(--ink,#1F1B16)) 38%)) 72%,transparent)!important;
}

body.encounter-active .exam-grid.general-consult-grid > .card,
body.encounter-active .card,
.edit-modal,
.survey-modal,
.file-modal,
.trend-modal,
.note-view-modal,
.billing-claim-editor-modal,
.doctor-notifications-modal{
  background:var(--exam-card-bg,var(--surface,#FAF4E8))!important;
  border:1px solid var(--exam-card-border,color-mix(in srgb,var(--ink,#1F1B16) 8%,transparent))!important;
  border-radius:16px!important;
  box-shadow:var(--exam-card-shadow,0 20px 40px -28px rgba(31,27,22,0.18))!important;
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .exam-grid.general-consult-grid > .card > .card-hdr:first-child,
body.encounter-active .card > .card-hdr:first-child,
.edit-modal-header,
.survey-modal-header,
.billing-claim-editor-topbar{
  background:var(--exam-card-header-bg,color-mix(in srgb,var(--ink,#1F1B16) 3%,var(--surface,#FAF4E8)))!important;
  border-bottom:1px solid var(--exam-card-header-rule,color-mix(in srgb,var(--ink,#1F1B16) 10%,transparent))!important;
  color:var(--exam-card-header-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .exam-grid.general-consult-grid > .card > .card-hdr:first-child > .card-title,
body.encounter-active .card-title{
  color:var(--exam-card-header-text,var(--ink,#1F1B16))!important;
  font-family:var(--os-card-heading-font)!important;
  font-size:var(--os-card-heading-size)!important;
  font-weight:var(--os-card-heading-weight)!important;
  line-height:var(--os-card-heading-line-height)!important;
  letter-spacing:var(--os-card-heading-letter-spacing)!important;
  text-transform:uppercase!important;
}

body.encounter-active .card .history-domain-hdr,
body.encounter-active .card .vitals-subhdr,
body.encounter-active .card .vitals-subhdr span:first-child,
body.encounter-active .sec-hd-title,
body.encounter-active .widget-tool-card-title,
body.encounter-active .hpi-form-title{
  color:color-mix(in srgb,var(--exam-section-title-text,var(--muted,#7A6D5C)) 88%,var(--exam-page-text,var(--ink,#1F1B16)))!important;
  font-family:var(--os-card-heading-font)!important;
  font-size:var(--os-card-heading-size)!important;
  font-weight:var(--os-card-heading-weight)!important;
  line-height:var(--os-card-heading-line-height)!important;
  letter-spacing:var(--os-card-heading-letter-spacing)!important;
  text-transform:uppercase!important;
}

.ocular-condition-text-only-notice,
.finalize-encounter-warning{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 12px!important;
  padding:8px 10px!important;
  border:1px solid color-mix(in srgb,var(--warning,#A57225) 28%,transparent)!important;
  border-radius:8px!important;
  background:color-mix(in srgb,var(--warning,#A57225) 10%,var(--exam-card-bg,var(--surface,#FAF4E8)))!important;
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:12px!important;
  line-height:1.35!important;
}

.ocular-condition-text-only-notice[hidden],
.finalize-encounter-warning[hidden]{
  display:none!important;
}

.ocular-condition-text-only-badge{
  flex:0 0 auto!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--warning,#A57225) 18%,transparent)!important;
  color:var(--warning,#A57225)!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:0!important;
  padding:4px 7px!important;
  text-transform:uppercase!important;
}

.ocular-condition-text-only-copy,
.finalize-encounter-warning{
  color:color-mix(in srgb,var(--exam-page-text,var(--ink,#1F1B16)) 82%,var(--warning,#A57225))!important;
}

/* Inferred-coding notice: the condition IS coded, but the coding was matched from
   free text (low confidence), so it reads as an info/verify caution — visually
   distinct from the amber "uncoded / text-only" warning above. Uses --info. */
.ocular-condition-inferred-coding-notice{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 12px!important;
  padding:8px 10px!important;
  border:1px solid color-mix(in srgb,var(--info,#3D5F87) 28%,transparent)!important;
  border-radius:8px!important;
  background:color-mix(in srgb,var(--info,#3D5F87) 9%,var(--exam-card-bg,var(--surface,#FAF4E8)))!important;
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:12px!important;
  line-height:1.35!important;
}

.ocular-condition-inferred-coding-notice[hidden]{
  display:none!important;
}

.ocular-condition-inferred-coding-badge{
  flex:0 0 auto!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--info,#3D5F87) 18%,transparent)!important;
  color:var(--info,#3D5F87)!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:0!important;
  padding:4px 7px!important;
  text-transform:uppercase!important;
}

.ocular-condition-inferred-coding-copy{
  color:color-mix(in srgb,var(--exam-page-text,var(--ink,#1F1B16)) 82%,var(--info,#3D5F87))!important;
}

body.encounter-active .exam-grid.general-consult-grid > .card > .card-footer,
body.encounter-active .card > .card-footer{
  background:var(--exam-card-footer-bg,color-mix(in srgb,var(--ink,#1F1B16) 3%,var(--surface,#FAF4E8)))!important;
  border-top:1px solid var(--exam-card-footer-rule,color-mix(in srgb,var(--ink,#1F1B16) 10%,transparent))!important;
}

body.encounter-active .exam-grid.general-consult-grid > .card > .card-scroll,
body.encounter-active .card-scroll,
body.encounter-active .card-body{
  background:var(--exam-card-bg,var(--surface,#FAF4E8))!important;
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .div-label,
body.encounter-active .field-label,
body.encounter-active .exam-row-label,
body.encounter-active .exam-hdr,
body.encounter-active .input-unit,
body.encounter-active .hpi-vf-followups label{
  color:var(--exam-section-title-text,var(--muted,#7A6D5C))!important;
}

body.encounter-active .card .vitals-subhdr,
body.encounter-active .card .history-domain-hdr,
body.encounter-active .exam-row,
body.encounter-active .sec-hd{
  border-color:var(--exam-section-rule,color-mix(in srgb,var(--ink,#1F1B16) 10%,transparent))!important;
}

body.encounter-active input[type="text"],
body.encounter-active input[type="number"],
body.encounter-active input[type="search"],
body.encounter-active select,
body.encounter-active textarea,
.edit-modal input,
.edit-modal select,
.edit-modal textarea,
.survey-modal input,
.survey-modal select,
.survey-modal textarea,
.billing-claim-editor-modal input,
.billing-claim-editor-modal select,
.billing-claim-editor-modal textarea{
  background:var(--exam-input-bg,transparent)!important;
  border:1px solid var(--exam-input-border,color-mix(in srgb,var(--ink,#1F1B16) 20%,transparent))!important;
  border-radius:var(--os-entry-text-radius,var(--radius,8px))!important;
  color:var(--exam-input-text,var(--ink,#1F1B16))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}

body.encounter-active input[type="text"]:hover,
body.encounter-active input[type="number"]:hover,
body.encounter-active input[type="search"]:hover,
body.encounter-active select:hover,
body.encounter-active textarea:hover{
  border-color:var(--exam-input-hover-border,color-mix(in srgb,var(--ink,#1F1B16) 32%,transparent))!important;
}

body.encounter-active input:focus,
body.encounter-active select:focus,
body.encounter-active textarea:focus,
.edit-modal input:focus,
.edit-modal select:focus,
.edit-modal textarea:focus,
.survey-modal input:focus,
.survey-modal select:focus,
.survey-modal textarea:focus,
.billing-claim-editor-modal input:focus,
.billing-claim-editor-modal select:focus,
.billing-claim-editor-modal textarea:focus{
  background:var(--exam-input-filled-bg,var(--surface,#FAF4E8))!important;
  border-color:var(--exam-input-focus-border,var(--accent,#C2553A))!important;
  box-shadow:0 0 0 3px var(--exam-input-focus-ring,color-mix(in srgb,var(--accent,#C2553A) 18%,transparent))!important;
}

body.encounter-active input::placeholder,
body.encounter-active textarea::placeholder{
  color:var(--exam-input-placeholder,var(--faint,#A89782))!important;
}

body.encounter-active input.stored-input,
body.encounter-active .stored-note{
  color:var(--exam-chip-stored-text,var(--warning,#A57225))!important;
}

body.encounter-active .tog-val,
body.encounter-active .cd-val,
body.encounter-active .inv-val,
body.encounter-active .lens-sub-val,
body.encounter-active .dil-val,
body.encounter-active .sb-btn,
body.encounter-active .sb-status-btn,
body.encounter-active .vital-na-btn,
body.encounter-active .addon-btn,
body.encounter-active .widget-tool-card button,
body.encounter-active .hpi-form-close{
  background:var(--exam-chip-bg,color-mix(in srgb,var(--ink,#1F1B16) 6%,transparent))!important;
  border:1px solid var(--exam-chip-border,transparent)!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  color:var(--exam-chip-text,var(--muted,#7A6D5C))!important;
  box-shadow:none!important;
}

body.encounter-active .tog-val:hover,
body.encounter-active .cd-val:hover,
body.encounter-active .inv-val:hover,
body.encounter-active .lens-sub-val:hover,
body.encounter-active .dil-val:hover,
body.encounter-active .sb-btn:hover,
body.encounter-active .vital-na-btn:hover,
body.encounter-active .addon-btn:hover,
body.encounter-active .widget-tool-card button:hover,
body.encounter-active .hpi-form-close:hover{
  background:var(--exam-chip-hover-bg,color-mix(in srgb,var(--ink,#1F1B16) 10%,transparent))!important;
  color:var(--ink,#1F1B16)!important;
}

body.encounter-active .tog-val.abnormal,
body.encounter-active .tog-val.pupil-size-aniso,
body.encounter-active .stored-amber,
body.encounter-active .inv-status.warn,
body.encounter-active .inv-status.abnormal{
  background:var(--exam-chip-abnormal-bg,color-mix(in srgb,var(--warning,#A57225) 16%,transparent))!important;
  color:var(--exam-chip-abnormal-text,var(--warning,#A57225))!important;
  border-color:transparent!important;
}

body.encounter-active .tog-val.na,
body.encounter-active .cd-val.na,
body.encounter-active .eye-tag.na-tag,
body.encounter-active .vital-na-btn.active,
body.encounter-active .widget-na-active .widget-na-btn{
  background:var(--exam-chip-na-bg,color-mix(in srgb,var(--ink,#1F1B16) 6%,transparent))!important;
  color:var(--exam-chip-na-text,var(--faint,#A89782))!important;
  border-color:transparent!important;
}

body.encounter-active .tog-val.editing,
body.encounter-active .cd-select{
  background:var(--exam-chip-editing-bg,var(--surface,#FAF4E8))!important;
  border-color:var(--exam-chip-editing-border,var(--accent,#C2553A))!important;
  color:var(--exam-input-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .eye-tag.od,
body.encounter-active .od{
  background:var(--exam-eye-od-bg,var(--accent-soft,#F1DED4))!important;
  color:var(--exam-eye-od-text,var(--accent-ink,#8E3A26))!important;
}

body.encounter-active .eye-tag.os,
body.encounter-active .os{
  background:var(--exam-eye-os-bg,color-mix(in srgb,var(--success,#5C7A5B) 16%,var(--surface,#FAF4E8)))!important;
  color:var(--exam-eye-os-text,var(--success,#5C7A5B))!important;
}

body.encounter-active .widget-download-btn,
body.encounter-active .widget-add-btn,
body.encounter-active .widget-na-btn,
body.encounter-active .history-entry-add,
body.encounter-active .dashboard-detail-add-btn{
  background:var(--exam-action-bg,transparent)!important;
  border:1px solid var(--exam-action-border,color-mix(in srgb,var(--ink,#1F1B16) 22%,transparent))!important;
  border-radius:var(--os-button-shape-radius,8px)!important;
  color:var(--exam-action-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .widget-download-btn:hover,
body.encounter-active .widget-add-btn:hover,
body.encounter-active .widget-na-btn:hover,
body.encounter-active .history-entry-add:hover{
  background:var(--exam-action-hover-bg,color-mix(in srgb,var(--ink,#1F1B16) 5%,transparent))!important;
  border-color:var(--exam-action-hover-border,color-mix(in srgb,var(--ink,#1F1B16) 35%,transparent))!important;
  color:var(--exam-action-hover-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .widget-directory,
body.encounter-active .widget-directory-results,
body.encounter-active .tools-widget-menu,
body.encounter-active .widget-tool-card,
body.encounter-active .hpi-inline-form{
  background:var(--exam-card-bg,var(--surface,#FAF4E8))!important;
  border-color:var(--exam-card-border,color-mix(in srgb,var(--ink,#1F1B16) 8%,transparent))!important;
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .widget-directory-result:hover,
body.encounter-active .history-card .list-inp-row:hover,
body.encounter-active .history-card .history-list-region:hover{
  background:var(--exam-row-hover-bg,color-mix(in srgb,var(--accent-soft,#F1DED4) 42%,var(--surface,#FAF4E8)))!important;
}

body.encounter-active .encounter-note-preview{
  background:var(--exam-card-bg,var(--surface,#FAF4E8))!important;
  border:1px solid var(--exam-card-border,color-mix(in srgb,var(--ink,#1F1B16) 8%,transparent))!important;
  border-radius:16px!important;
  box-shadow:var(--exam-card-shadow,0 20px 40px -28px rgba(31,27,22,0.18))!important;
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .encounter-note-preview-head{
  background:var(--exam-card-header-bg,color-mix(in srgb,var(--ink,#1F1B16) 3%,var(--surface,#FAF4E8)))!important;
  border-bottom:1px solid var(--exam-card-header-rule,color-mix(in srgb,var(--ink,#1F1B16) 10%,transparent))!important;
  color:var(--exam-card-header-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .encounter-note-preview-head h2{
  color:var(--exam-card-header-text,var(--ink,#1F1B16))!important;
  font-family:var(--display,'Newsreader',Georgia,serif)!important;
  font-weight:600!important;
  letter-spacing:0!important;
}

body.encounter-active .encounter-note-preview-head p{
  color:var(--muted,#7A6D5C)!important;
}

body.encounter-active .encounter-note-preview-body,
body.encounter-active .encounter-note-preview-editor.note-textarea{
  background:var(--exam-card-bg,var(--surface,#FAF4E8))!important;
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
}

body.encounter-active .encounter-note-preview-editor.note-textarea b,
body.encounter-active .encounter-note-preview-editor.note-textarea strong{
  color:var(--exam-page-text,var(--ink,#1F1B16))!important;
}

.modal-overlay,
.edit-modal-overlay,
#survey-modal-overlay,
#file-modal-overlay,
#billing-claim-editor-overlay,
#doctor-notifications-overlay{
  background:var(--modal-overlay-bg,color-mix(in srgb,var(--ink,#1F1B16) 42%,transparent))!important;
}

/* Cross-page visual normalization.
 * The Dashboard is the visual source of truth: warm paper canvas, contained
 * white/paper cards, rounded 18px shells, quiet ink borders, pill actions,
 * and the same text rhythm across Workspace, Customize, and Migrate.
 */
#tab-content-customize,
#tab-content-customize .builder-inspector-root,
#builder-inspector-root,
#tab-content-customize .design-walkthrough,
#tab-content-customize .design-hub,
#tab-content-customize .os-selector-wrap,
#tab-content-migrate,
#tab-content-migrate .migrate-panel{
  background:var(--os-dashboard-paper,var(--paper,#F4ECDD))!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
}

#tab-content-customize .design-walkthrough,
#tab-content-customize .design-hub{
  min-height:100%!important;
}

#tab-content-customize .design-tool-header h2,
#tab-content-migrate .migrate-header h2{
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:18px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:0!important;
}

#tab-content-customize .design-tool-header p,
#tab-content-migrate .migrate-header p{
  color:var(--os-dashboard-muted,var(--muted,#7A6D5C))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:18px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:0!important;
}

#tab-content-customize .design-walkthrough-simplified .os-selector-container,
#tab-content-customize .design-walkthrough-simplified .os-selector-footer{
  max-width:1236px!important;
}

#tab-content-migrate .migrate-panel{
  max-width:1480px!important;
}

#tab-content-migrate .migrate-subpane{
  padding-left:62px!important;
  padding-right:62px!important;
}

#tab-content-customize .design-walkthrough-simplified .os-selector-grid{
  gap:22px!important;
}

#tab-content-customize .design-walkthrough-simplified .os-selector-card,
#tab-content-customize .dashboard-design-stage,
#tab-content-customize .dashboard-design-preview,
#tab-content-migrate .migrate-target-card,
#tab-content-migrate .migrate-export{
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
  border:1px solid color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 8%,transparent)!important;
  border-radius:18px!important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.55) inset,
    0 1px 2px rgba(31,27,22,0.05),
    0 28px 56px -36px rgba(31,27,22,0.22)!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
}

#tab-content-customize .design-walkthrough-simplified .os-selector-card{
  min-height:300px!important;
  padding:28px 24px!important;
  justify-content:center!important;
}

#tab-content-customize .design-walkthrough-simplified .os-selector-card[data-selected="true"]{
  padding:27px 23px!important;
  border:2px solid var(--os-dashboard-accent,var(--accent,#C2553A))!important;
}

#tab-content-customize .design-walkthrough-simplified .os-selector-thumb,
#tab-content-customize .design-walkthrough-simplified .os-selector-note-icon{
  margin-bottom:18px!important;
  transform:scale(1.12)!important;
}

#tab-content-customize .design-walkthrough-simplified .os-selector-label,
#tab-content-migrate .migrate-target-card h3{
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:18px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:0!important;
}

#tab-content-customize .design-walkthrough-simplified .os-selector-desc,
#tab-content-migrate .migrate-target-card p,
#tab-content-migrate .migrate-export p{
  color:var(--os-dashboard-muted,var(--muted,#7A6D5C))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.5!important;
  letter-spacing:0!important;
}

#tab-content-customize .os-selector-badge,
#tab-content-customize .os-selector-check{
  background:var(--os-dashboard-accent,var(--accent,#C2553A))!important;
  color:var(--paper,#F4ECDD)!important;
}

#tab-content-customize .os-selector-next,
#tab-content-customize .dashboard-design-back,
#tab-content-customize .dashboard-design-next,
#tab-content-customize .dashboard-design-save,
#tab-content-migrate .migrate-panel button,
.or-day-prev,
.or-day-next{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:0 16px!important;
  border-radius:var(--os-button-shape-radius,999px)!important;
  font:700 13px/1 var(--font,'Geist',system-ui,sans-serif)!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}

#tab-content-customize .os-selector-next[data-active="true"],
#tab-content-customize .dashboard-design-next,
#tab-content-customize .dashboard-design-save{
  background:var(--os-button-primary-bg,var(--ink,#1F1B16))!important;
  border:1px solid var(--os-button-primary-border,var(--ink,#1F1B16))!important;
  color:var(--os-button-primary-text,var(--paper,#F4ECDD))!important;
}

#tab-content-customize .os-selector-next[data-active="false"],
#tab-content-customize .dashboard-design-back,
#tab-content-migrate .migrate-panel button,
.or-day-prev,
.or-day-next{
  background:var(--os-button-secondary-bg,transparent)!important;
  border:1px solid var(--os-button-secondary-border,color-mix(in srgb,var(--ink,#1F1B16) 18%,transparent))!important;
  color:var(--os-button-secondary-text,var(--ink,#1F1B16))!important;
}

#tab-content-customize .os-selector-next[data-active="false"]{
  color:var(--os-dashboard-faint,var(--faint,#A89782))!important;
  cursor:not-allowed!important;
}

#tab-content-customize .dashboard-design-tile,
#tab-content-customize .dashboard-design-step{
  background:var(--os-dashboard-surface,var(--surface,#FAF4E8))!important;
  border:1px solid color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 8%,transparent)!important;
  border-radius:14px!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
  font-family:var(--font,'Geist',system-ui,sans-serif)!important;
}

#tab-content-customize .dashboard-design-tile[data-selected="true"],
#tab-content-customize .dashboard-design-step.active{
  border-color:var(--os-dashboard-accent,var(--accent,#C2553A))!important;
}

#tab-content-migrate .migrate-export pre{
  background:var(--os-dashboard-paper,var(--paper,#F4ECDD))!important;
  border:1px solid color-mix(in srgb,var(--os-dashboard-ink,var(--ink,#1F1B16)) 8%,transparent)!important;
  border-radius:12px!important;
  color:var(--os-dashboard-ink,var(--ink,#1F1B16))!important;
}

#tab-content-customize .design-output-card,
#tab-content-customize .design-output-preview{
  display:none!important;
}
