/* LawApp V6.78 — Global Typography System
   Display: Source Serif 4
   UI/body: Inter
   Goal: legal/editorial hierarchy without sacrificing product readability. */

:root{
  --la-font-ui:"Inter",Inter,Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --la-font-display:"Source Serif 4","Iowan Old Style","Palatino Linotype","Book Antiqua",Palatino,Georgia,"Times New Roman",serif;
  --la-font:var(--la-font-ui);
  --la-reading-width:68ch;
}

html{font-size:16px;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
body,.lawapp-app,.lawapp-site,.lawapp-auth{font-family:var(--la-font-ui)!important;font-weight:400;letter-spacing:-.008em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
button,input,select,textarea,optgroup{font-family:var(--la-font-ui)!important;font-variant-numeric:tabular-nums}
input,select,textarea{font-size:14px!important;font-weight:400;line-height:1.45;letter-spacing:-.006em}
input::placeholder,textarea::placeholder{color:#96a1ad!important;font-weight:400!important;opacity:1}
button,.btn,.client-btn,.btn-site,.portal-btn,.site-cta,.auth-submit,.lawyer-action-primary-v43,.lawyer-action-secondary-v43,.ui-quick-create{font-weight:600!important;letter-spacing:-.006em!important}

/* Major editorial titles */
.lawapp-app :where(.page-hero,.citizen-page-hero,.lawyer-page-hero-v43,.corp-page-hero-v44,.case-hero-v46,.legal-market-hero-v614,.pro-suite-hero-v638,.pro-work-hero-v638,.admin-lawyers-hero-v47) h1,
.lawapp-site :where(.modern-hero,.solution-top,.site-hero,.persona-hero,.portal-hero,.site-page) h1,
.lawapp-auth :where(.auth-card,.auth-shell,.portal-auth-shell,.role-login-form) h1,
.lawapp-app .citizen-briefing-v672 h1,
.lawapp-app .lc-hero-copy-v665 h1{
  font-family:var(--la-font-display)!important;
  font-weight:500!important;
  letter-spacing:-.035em!important;
  line-height:1.02!important;
}

.lawapp-app :where(.page-hero,.citizen-page-hero,.lawyer-page-hero-v43,.corp-page-hero-v44,.case-hero-v46) h1{font-size:clamp(34px,3.4vw,48px)!important}
.lawapp-site :where(.modern-hero,.solution-top,.site-hero,.persona-hero,.portal-hero) h1{font-family:var(--la-font-display)!important;font-weight:500!important;letter-spacing:-.04em!important;line-height:.98!important}
.lawapp-auth :where(.auth-card,.auth-shell,.portal-auth-shell,.role-login-form) h1{font-size:clamp(38px,4vw,50px)!important}

/* Section titles: editorial, but smaller product cards remain UI sans */
.lawapp-app :where(.section-title,.page-section-title,.panel-head,.form-head,.settings-section-head-v54,.lc-section-head-v665,.citizen-card-head-v42,.notification-section-head,.finance-section-head) > :where(h2,h3),
.lawapp-site :where(.site-section-head,.section-heading,.persona-section-head) :where(h2,h3),
.lawapp-site .site-page > :where(h1,h2){
  font-family:var(--la-font-display)!important;
  font-weight:550!important;
  letter-spacing:-.025em!important;
  line-height:1.12!important;
}
.lawapp-app .lc-section-head-v665 h2{font-size:21px!important}

/* Card/workflow titles stay crisp and operational */
.lawapp-app :where(.client-card,.lawyer-panel-v43,.corp-panel-v44,.panel,.workspace-widget,.data-card,.table-card,.message-thread,.conversation-list,.lawyer-request-row-v43,.lc-action-row-v665,.lc-timeline-row-v665,.lc-case-list-v665,.lc-task-list-v665) :where(h2,h3,strong){font-family:var(--la-font-ui)}

/* Existing citizen editorial system now uses the global display face */
.role-citizen[data-page="dashboard.php"]{--cp-display:var(--la-font-display)!important}
.role-citizen[data-page="dashboard.php"] :where(.citizen-card-head-v42 h2,.citizen-next-step-v42 h2,.citizen-forum-feature-v56 h2){font-family:var(--la-font-display)!important;font-weight:500!important}

/* Topbar and navigation are product UI, never serif */
.workspace-title,.workspace-title strong,.workspace-title small,
.workspace-brand,.workspace-brand-copy,.workspace-nav,.workspace-nav a,.nav-label,.sidebar-user,.sidebar-footer,
.site-brand,.site-logo-type,.site-nav,.portal-brand,.portal-role-nav,.fresh-public-header{
  font-family:var(--la-font-ui)!important;
}
.workspace-title strong{font-size:19px!important;font-weight:650!important;letter-spacing:-.025em!important}
.workspace-title small{font-size:10px!important;font-weight:600!important;letter-spacing:.065em!important}
.workspace-nav a{font-size:13.5px!important;font-weight:550!important;letter-spacing:-.004em!important}
.nav-label{font-size:9.5px!important;font-weight:650!important;letter-spacing:.085em!important}
.workspace-brand-copy strong,.site-logo-type strong,.portal-brand strong{font-weight:700!important;letter-spacing:-.025em!important}

/* Editorial scale and reading rhythm */
.lawapp-app p,.lawapp-site p,.lawapp-auth p{line-height:1.62}
.lawapp-app :where(.page-hero,.citizen-page-hero,.lawyer-page-hero-v43,.corp-page-hero-v44,.case-hero-v46,.lc-hero-copy-v665) p,
.lawapp-site :where(.modern-hero,.solution-top,.portal-hero,.site-page) p{max-width:var(--la-reading-width);font-size:14.5px!important;line-height:1.68!important;letter-spacing:-.004em}
.lawapp-app :where(.panel,.client-card,.lawyer-panel-v43,.corp-panel-v44,.workspace-widget) p{font-size:13px;line-height:1.58}

/* Category labels: uppercase only where it adds hierarchy, without excessive tracking */
.lawapp-app :where([class*="kicker"],[class*="eyebrow"],.nav-label,.workspace-title small,.lc-section-head-v665>div>small,.lc-kpis-v665 small,.cr-details small,.request-meta-v43 small),
.lawapp-site :where([class*="kicker"],[class*="eyebrow"]){
  font-family:var(--la-font-ui)!important;
  font-weight:600!important;
  letter-spacing:.065em!important;
}

/* Large numbers: quieter, editorial, tabular */
.lawapp-app :where(.client-metric strong,.citizen-briefing-stat-v672 strong,.citizen-ledger-metrics-v672 strong,.lc-kpis-v665 strong,.lc-consult-summary-v665 b,.lawyer-submetrics-v43 b,.request-summary-v42 b,.corp-metric-strip-v44 b,.pro-metrics-v638 b,.notifications-hero-stats-v661 b,.premium-metrics-v659 b,.client-card-stats-v43 b,.lawyer-finance-kpis-v662 strong,.platform-fee-kpis-v674 strong,.admin-fee-summary-v674 strong,.availability-summary-v673 strong,.messages-total-v61){
  font-family:var(--la-font-display)!important;
  font-weight:450!important;
  letter-spacing:-.035em!important;
  font-variant-numeric:tabular-nums lining-nums;
}
.lawapp-app .lc-kpis-v665 strong{font-size:32px!important}
.lawapp-app .lc-consult-summary-v665 b{font-size:25px!important}

/* Money, dates, timers and audit-oriented values remain unambiguous */
.lawapp-app :where(time,[class*="amount"],[class*="price"],[class*="total"],[class*="countdown"],[class*="timer"],.fee-money-v674,.earning-amount-v662),
.lawapp-call-page :where(time,[class*="timer"],[class*="time"]){font-variant-numeric:tabular-nums lining-nums}

/* Forms: labels should guide, not shout */
.lawapp-app form label,.lawapp-auth form label{font-family:var(--la-font-ui);font-size:12px;font-weight:600;letter-spacing:.01em;text-transform:none;line-height:1.35}
.lawapp-app form label > span,.lawapp-auth form label > span{font-weight:600;letter-spacing:.002em}

/* Messages need compact UI typography, while legal timestamps stay exact */
.role-citizen[data-page="messages.php"],.role-lawyer[data-page="messages.php"]{font-family:var(--la-font-ui)!important}
[data-page="messages.php"] :where(.message-bubble,.message-text,.conversation-preview,.message-composer-v46 textarea){font-family:var(--la-font-ui)!important}
[data-page="messages.php"] :where(.message-bubble time,.message-time,.message-system-v674 time){font-size:10.5px!important;font-weight:500;letter-spacing:.01em;font-variant-numeric:tabular-nums}

/* Auth/public pages: legal stationery character without becoming old-fashioned */
.lawapp-auth .auth-art-copy h2,.lawapp-site :where(.site-section,.site-page) h2{font-family:var(--la-font-display)!important;font-weight:500!important;letter-spacing:-.03em!important;line-height:1.06!important}
.lawapp-auth .role-option strong{font-family:var(--la-font-ui)!important;font-weight:600!important}

/* Accessibility: avoid ultra-thin text on small screens */
@media (max-width:820px){
  .lawapp-app :where(.page-hero,.citizen-page-hero,.lawyer-page-hero-v43,.corp-page-hero-v44,.case-hero-v46) h1{font-size:clamp(31px,9vw,40px)!important;line-height:1.03!important}
  .lawapp-app :where(.client-metric strong,.citizen-ledger-metrics-v672 strong,.lc-kpis-v665 strong,.lawyer-submetrics-v43 b,.request-summary-v42 b){font-weight:500!important}
  .workspace-nav a{font-size:14px!important}
}

@media (max-width:520px){
  body,.lawapp-app,.lawapp-site,.lawapp-auth{letter-spacing:0}
  .lawapp-app p,.lawapp-site p,.lawapp-auth p{line-height:1.58}
  .lawapp-app form label,.lawapp-auth form label{font-size:12.5px}
}

/* Standalone secure call room */
.lawapp-call-page,.lawapp-call-page button{font-family:var(--la-font-ui)!important}
.lawapp-call-page .lawapp-call-remote-placeholder h1{font-family:var(--la-font-display)!important;font-weight:500!important;letter-spacing:-.03em!important}
.lawapp-call-page .lawapp-call-logo{font-family:var(--la-font-display)!important}
