/* Shared interface rhythm. Report/editor typography is intentionally scoped elsewhere. */
:root { --ui-helper-size: .875rem; --ui-muted: #52647b; --ui-gap: 1rem; }
.workspace-main { line-height: 1.55; }
.workspace-main .breadcrumb, .workspace-main .help-text, .workspace-main .field-help,
.workspace-main .page-description, .sidebar-help { font-size: var(--ui-helper-size); line-height: 1.6; color: var(--ui-muted); }
.workspace-main h1 { letter-spacing: -.035em; line-height: 1.3; }
.workspace-main h2, .workspace-main h3 { letter-spacing: -.02em; }
.workspace-main :is(input,select,button) { font-family: inherit; }
.workspace-main :is(button,.button,.secondary-button) { line-height: 1.45; font-weight: 600; }
.workspace-main :is(button,.button,.secondary-button,a,summary,input,select,textarea):focus-visible,
.workspace-sidebar a:focus-visible { outline: 3px solid #2457c5; outline-offset: 3px; }
.workspace-main :is(.financial-stats,.dashboard-stat-strip,.overview-stats) { font-variant-numeric: tabular-nums; }
.availability-badge, .nav-availability { display: inline-flex; align-items: center; gap: .3rem; padding: .15rem .45rem; border: 1px solid #ccd6e3; border-radius: 5px; background: #f1f4f8; color: #52647b; font-size: .875rem; font-weight: 600; white-space: nowrap; }
.workspace-sidebar .nav-availability { margin-left: auto; padding: .1rem .3rem; font-size: .75rem; }
.availability-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; margin: 1rem 0; }
.availability-actions :is(.button,.secondary-button) { margin: 0; }
.workspace-main .source-badge, .workspace-main .weekly-cell small { font-size: .875rem; line-height: 1.5; }
@media(max-width:720px) {
  .workspace-main :is(.record-actions,.record-order-controls,.work-progress-actions) :is(a,button),
  .workspace-main :is(.calendar-view-controls button,.calendar-arrow,.calendar-dialog-close) { min-height: 44px; min-width: 44px; }
  .workspace-main :is(.daily-record-meta,.daily-status-badge,.record-row small,.workspace-intro,.section-link,.eyebrow) { font-size: .875rem; }
  .workspace-main .page-heading { align-items: flex-start; flex-wrap: wrap; }
  .workspace-main .page-heading h1 { margin-top: 0; }
}
/* Secondary information is legible without competing with headings. */
.workspace-main :is(.business-meta,.business-status,.work-origin-badge,.work-target-tag,
  .work-context-label,.work-context-label time,.work-context-people,.work-current-actions,
  .timeline-label,.timeline-date,.timeline-empty,.d-day-badge,.calendar-source-meta,
  .calendar-source-color-field label,.calendar-source-legend,.calendar-agenda-event small,
  .work-context-expand > summary small) { font-size: .875rem; line-height: 1.55; }
.workspace-main .calendar-source-legend { color: #52647b; }
.workspace-main :is(.eyebrow,.section-link) { font-size: .875rem; }
.workspace-main .calendar-panel-heading .section-link { font-size: .875rem; }
/* Adjacent-month dates remain selectable and meet normal-text contrast. */
.workspace-main .calendar-other-month:not(.calendar-is-today) .calendar-day-number { color: #52647b; }
.workspace-main .calendar-month .calendar-day-number { font-size: .875rem !important; }
/* Component display rules must never reveal a control marked hidden. */
[hidden] { display: none !important; }
