/*
 * Talerum V26.62 — Product typography & rhythm baseline
 * Final cascade layer for consistent typography, spacing and alignment.
 * Deliberately scoped to product content so the approved sidebar/topbar shell
 * remains untouched.
 */
:root{
  --tr-font-sans:Inter,"Segoe UI Variable","Segoe UI",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  --tr-text-2xs:12px;
  --tr-text-xs:12.75px;
  --tr-text-sm:13.5px;
  --tr-text-md:14.5px;
  --tr-text-lg:16px;
  --tr-text-xl:18px;
  --tr-title-page:27px;
  --tr-leading-tight:1.25;
  --tr-leading-ui:1.4;
  --tr-leading-copy:1.5;
  --tr-space-1:6px;
  --tr-space-2:10px;
  --tr-space-3:14px;
  --tr-space-4:16px;
  --tr-space-5:18px;
  --tr-space-6:22px;
  --tr-line:#E8DDD4;
  --tr-line-soft:#F2ECE7;
  --tr-text:#211D1A;
  --tr-text-muted:#6F625C;
  --tr-text-soft:#84928C;
  --tr-accent:#C46A2D;
  --tr-accent-dark:#A95425;
  --tr-surface:#FFFFFF;
}

html{-webkit-text-size-adjust:100%}
body[data-talerum-layout]{font-family:var(--tr-font-sans)!important;font-variant-numeric:tabular-nums}
body[data-talerum-layout] :where(button,input,select,textarea,table){font-family:var(--tr-font-sans)!important}

/* --------------------------------------------------------------------------
   Private product surfaces — content typography
   -------------------------------------------------------------------------- */
body[data-talerum-layout="private"] .workspace{
  color:var(--tr-text);
  font-size:15px;
  line-height:var(--tr-leading-ui);
}
body[data-talerum-layout="private"] .workspace :where(.topbar h1,.page-header h1){
  color:#111!important;
  font-size:var(--tr-title-page)!important;
  font-weight:780!important;
  line-height:1.15!important;
  letter-spacing:-.55px!important;
}
body[data-talerum-layout="private"] .workspace .breadcrumb{
  font-size:var(--tr-text-sm)!important;
  line-height:1.3!important;
}
body[data-talerum-layout="private"] .workspace :where(.section-title,.panel-title,.card-title,.row-title,.settings-panel-head h2,.modal-title){
  color:var(--tr-text)!important;
  font-size:var(--tr-text-lg)!important;
  font-weight:770!important;
  line-height:1.3!important;
  letter-spacing:-.08px!important;
}
body[data-talerum-layout="private"] .workspace :where(.section-sub,.section-subtitle,.panel-sub,.card-sub,.row-sub,.sub,.settings-panel-head p){
  color:var(--tr-text-muted)!important;
  font-size:var(--tr-text-sm)!important;
  line-height:var(--tr-leading-copy)!important;
}
body[data-talerum-layout="private"] .workspace :where(.item-title,.list-copy strong,.timeline-copy strong,.detail-row strong,.fact-value,.kpi strong,.check-copy strong){
  color:var(--tr-text)!important;
  font-size:var(--tr-text-md)!important;
  font-weight:740!important;
  line-height:1.35!important;
}
body[data-talerum-layout="private"] .workspace :where(.item-copy,.list-copy>span,.timeline-copy>span,.timeline-copy>small,.detail-row label,.check-copy>span,.fact-helper,.row-copy>span){
  color:var(--tr-text-muted)!important;
  font-size:var(--tr-text-sm)!important;
  line-height:var(--tr-leading-copy)!important;
}
body[data-talerum-layout="private"] .workspace :where(.item-meta,.row-meta,.timeline-time,.metric-helper,.eyebrow,.kicker,.overline){
  font-size:var(--tr-text-xs)!important;
  line-height:var(--tr-leading-ui)!important;
}

/* Metrics follow one scale on every dashboard. */
body[data-talerum-layout="private"] .workspace .metric-label{
  color:#7A6F68!important;
  font-size:var(--tr-text-sm)!important;
  font-weight:680!important;
  line-height:1.3!important;
}
body[data-talerum-layout="private"] .workspace .metric-value{
  color:var(--tr-text)!important;
  font-size:23px!important;
  font-weight:790!important;
  line-height:1.05!important;
  letter-spacing:-.35px!important;
}
body[data-talerum-layout="private"] .workspace :where(.metric-note,.metric-helper){
  margin-top:6px!important;
  color:var(--tr-text-muted)!important;
  font-size:var(--tr-text-sm)!important;
  line-height:1.4!important;
}
body[data-talerum-layout="private"] .workspace .mini-stat label{
  font-size:var(--tr-text-xs)!important;
  line-height:1.3!important;
}
body[data-talerum-layout="private"] .workspace .mini-stat strong{
  font-size:var(--tr-text-xl)!important;
  line-height:1.2!important;
}
body[data-talerum-layout="private"] .workspace .mini-stat span{
  font-size:var(--tr-text-sm)!important;
  line-height:1.45!important;
}

/* Controls, filters and segmented navigation. */
body[data-talerum-layout="private"] .workspace :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.select,.filter-select,.search){
  color:var(--tr-text)!important;
  font-size:13px!important;
  line-height:1.4!important;
}
body[data-talerum-layout="private"] .workspace :where(.field,.form-field,.pm-field)>label,
body[data-talerum-layout="private"] .workspace :where(.field,.form-field,.pm-field) label{
  color:#74665E!important;
  font-size:12px!important;
  font-weight:710!important;
  line-height:1.3!important;
}
body[data-talerum-layout="private"] .workspace :where(.primary,.secondary,.ghost,.primary-button,.secondary-button,.ghost-button,.soft-button,.mini-btn,.mini-button,.open-button,.link-btn,.text-button,.filter-button,.check-action){
  font-size:13px!important;
  font-weight:720!important;
  line-height:1.2!important;
}
body[data-talerum-layout="private"] .workspace :where(.tab,.tab-button,[role="tab"],.context-nav a,.context-nav button,.page-tab,.subtab,.nav-tab){
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.2!important;
}
body[data-talerum-layout="private"] .workspace :where(.pill,.badge,.status-pill,.status-chip,.status-cell,.priority,.page-pill){
  font-size:11.5px!important;
  font-weight:720!important;
  line-height:1.25!important;
}

/* Tables and list anatomy. */
body[data-talerum-layout="private"] .workspace :where(table,.data-table){font-size:13px!important}
body[data-talerum-layout="private"] .workspace :where(th,.data-table th){
  padding:12px 14px!important;
  color:#7C7069!important;
  font-size:11.5px!important;
  font-weight:740!important;
  line-height:1.35!important;
  letter-spacing:.025em!important;
}
body[data-talerum-layout="private"] .workspace :where(td,.data-table td){
  padding:13px 14px!important;
  color:#514741!important;
  font-size:13.25px!important;
  line-height:1.4!important;
  vertical-align:middle!important;
}
body[data-talerum-layout="private"] .workspace .list-item{
  min-height:58px!important;
  padding-top:13px!important;
  padding-bottom:13px!important;
  align-items:center!important;
}
body[data-talerum-layout="private"] .workspace :where(.item-side,.row-meta){
  align-items:flex-end;
  justify-content:center;
}
body[data-talerum-layout="private"] .workspace :where(.eye,.eye-button,.icon-btn,.icon-button){
  display:inline-grid!important;
  place-items:center!important;
}

/* Rhythm: one spacing language across content containers. */
body[data-talerum-layout="private"] .workspace :where(.grid-2,.grid-3,.grid-4,.grid-even,.metrics,.stack,.column,.workspace-grid){
  gap:var(--tr-space-4)!important;
}
body[data-talerum-layout="private"] .workspace :where(.toolbar,.filter-bar,.filters){
  gap:12px!important;
  margin-bottom:var(--tr-space-4)!important;
}
body[data-talerum-layout="private"] .workspace :where(.toolbar-actions,.panel-actions,.card-actions,.action-row,.quick-actions){gap:10px!important}
body[data-talerum-layout="private"] .workspace :where(.panel-head,.section-head,.card-head){
  gap:14px!important;
  margin-bottom:14px!important;
}
body[data-talerum-layout="private"] .workspace .panel{padding:18px!important}
body[data-talerum-layout="private"] .workspace .section{padding:18px!important}
body[data-talerum-layout="private"] .workspace .card-head{padding:18px 18px 0!important}
body[data-talerum-layout="private"] .workspace .card-body{padding:16px 18px 18px!important}
body[data-talerum-layout="private"] .workspace :where(.metric,.metric-card){padding:15px 16px!important}
body[data-talerum-layout="private"] .workspace :where(.table-wrap,.card,.panel,.section,.section-card){border-color:var(--tr-line)!important}

/* Shared modal typography and internal rhythm. */
body[data-talerum-layout="private"] :where(.modal-head h2,.modal-head h3,.pm-title){
  color:var(--tr-text)!important;
  font-size:21px!important;
  font-weight:790!important;
  line-height:1.25!important;
  letter-spacing:-.25px!important;
}
body[data-talerum-layout="private"] :where(.modal-head p,.pm-title-wrap p){
  color:var(--tr-text-muted)!important;
  font-size:13px!important;
  line-height:1.5!important;
}
body[data-talerum-layout="private"] :where(.modal-section,.pm-card){padding:18px!important}
body[data-talerum-layout="private"] :where(.modal-section-title,.pm-section-head h3){
  font-size:15px!important;
  line-height:1.3!important;
}
body[data-talerum-layout="private"] :where(.summary-box label,.pm-summary-box label,.pm-info label){font-size:11.5px!important}
body[data-talerum-layout="private"] :where(.summary-box strong,.pm-summary-box strong,.pm-info strong){font-size:13.5px!important;line-height:1.35!important}
body[data-talerum-layout="private"] :where(.summary-box span,.pm-summary-box span,.pm-info span){font-size:12px!important;line-height:1.45!important}
body[data-talerum-layout="private"] :where(.modal-actions,.modal-foot,.pm-footer-right){gap:10px!important}

/* Public/auth surfaces keep the same proportions without adopting private density. */
body[data-talerum-layout="public"]{font-size:16px;line-height:1.5}
body[data-talerum-layout="public"] :where(.card-title,.public-section-head h2,.public-section-head h3){font-size:17px!important;line-height:1.3!important}
body[data-talerum-layout="public"] :where(.card-sub,.public-section-head p,.notice p,.list-copy span){font-size:14px!important;line-height:1.5!important}
body[data-talerum-layout="public"] :where(.field,.public-field) label{font-size:13px!important}
body[data-talerum-layout="public"] :where(input,select,textarea,.primary,.secondary,.public-button){font-size:14px!important}
body[data-talerum-layout="auth"]{font-size:16px;line-height:1.5}
body[data-talerum-layout="auth"] :where(.auth-field label){font-size:13px!important}
body[data-talerum-layout="auth"] :where(.auth-field input,.auth-submit){font-size:14px!important}

/* --------------------------------------------------------------------------
   Agenda — legibility and local type alignment
   -------------------------------------------------------------------------- */
body[data-talerum-page="agenda"] .schedule-corner{
  color:#74665E!important;
  font-size:11.5px!important;
}
body[data-talerum-page="agenda"] .schedule-corner strong{
  color:var(--tr-text)!important;
  font-size:12.5px!important;
}
body[data-talerum-page="agenda"] .professional-copy strong{
  color:var(--tr-text)!important;
  font-size:13px!important;
  line-height:1.25!important;
}
body[data-talerum-page="agenda"] .professional-copy span,
body[data-talerum-page="agenda"] .professional-occupancy{
  color:#746A64!important;
  font-size:11px!important;
  line-height:1.3!important;
}
body[data-talerum-page="agenda"] .time-label{
  color:#6B625D!important;
  font-size:11px!important;
  font-weight:650!important;
  line-height:1!important;
}
body[data-talerum-page="agenda"] .event{
  padding:6px 9px 5px 11px!important;
  color:var(--tr-text)!important;
}
body[data-talerum-page="agenda"] .event-time{
  display:block!important;
  color:#A95425!important;
  font-size:11px!important;
  font-weight:790!important;
  line-height:1.2!important;
  opacity:1!important;
}
body[data-talerum-page="agenda"] .event-patient{
  margin-top:2px!important;
  color:#2B211D!important;
  font-size:13px!important;
  font-weight:760!important;
  line-height:1.22!important;
  opacity:1!important;
}
body[data-talerum-page="agenda"] .event-meta{
  margin-top:2px!important;
  color:#615A56!important;
  font-size:11px!important;
  font-weight:520!important;
  line-height:1.25!important;
  opacity:1!important;
}
body[data-talerum-page="agenda"] .event.compact{
  padding:5px 8px 4px 10px!important;
}
body[data-talerum-page="agenda"] .event.compact .event-time{font-size:10.5px!important}
body[data-talerum-page="agenda"] .event.compact .event-patient{font-size:12px!important}
body[data-talerum-page="agenda"] .event.blocked .event-time{
  color:#655D58!important;
}
body[data-talerum-page="agenda"] .event.blocked .event-patient{
  color:#4C4541!important;
}
body[data-talerum-page="agenda"] .now-label{
  color:#A94840!important;
  background:#FCE6E3!important;
  font-size:10.5px!important;
  line-height:1.2!important;
}
body[data-talerum-page="agenda"] .summary-grid{
  grid-template-columns:82px minmax(0,1fr)!important;
  gap:14px!important;
}
body[data-talerum-page="agenda"] .summary-ring{
  width:80px!important;
  height:80px!important;
}
body[data-talerum-page="agenda"] .summary-ring::before{
  width:60px!important;
  height:60px!important;
}
body[data-talerum-page="agenda"] .summary-ring-copy{
  display:flex!important;
  width:54px!important;
  height:54px!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}
body[data-talerum-page="agenda"] .summary-ring-copy strong{
  margin:0!important;
  color:#3B241B!important;
  font-size:19px!important;
  line-height:1!important;
  letter-spacing:-.35px!important;
}
body[data-talerum-page="agenda"] .summary-ring-copy span{
  display:block!important;
  max-width:46px!important;
  margin:3px 0 0!important;
  color:#708079!important;
  font-size:10.5px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body[data-talerum-page="agenda"] .summary-item{
  color:#665E59!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}
body[data-talerum-page="agenda"] .summary-item b{
  color:#3B241B!important;
  font-size:12px!important;
}
body[data-talerum-page="agenda"] .rail-title{font-size:15px!important}
body[data-talerum-page="agenda"] .rail-subtitle{font-size:11.5px!important}
body[data-talerum-page="agenda"] .attention-copy strong,
body[data-talerum-page="agenda"] .wait-copy strong{font-size:12.5px!important}
body[data-talerum-page="agenda"] .attention-copy span,
body[data-talerum-page="agenda"] .wait-copy span{font-size:11.25px!important}

/* Reduced-width behavior keeps the hierarchy instead of shrinking type. */
@media(max-width:1180px){
  body[data-talerum-layout="private"] .workspace :where(.grid-4,.metrics){gap:12px!important}
  body[data-talerum-layout="private"] .workspace .panel,
  body[data-talerum-layout="private"] .workspace .section{padding:16px!important}
}
@media(max-width:760px){
  body[data-talerum-layout="private"] .workspace{font-size:14.5px}
  body[data-talerum-layout="private"] .workspace :where(.topbar h1,.page-header h1){font-size:23px!important}
  body[data-talerum-layout="private"] .workspace :where(.section-title,.panel-title,.card-title,.row-title){font-size:14.5px!important}
  body[data-talerum-layout="private"] .workspace :where(th,.data-table th){font-size:11px!important}
  body[data-talerum-layout="private"] .workspace :where(td,.data-table td){font-size:12.75px!important}
}
