/* E-SchoolSite Professional Typography Layer
   Native-first stack: fast, privacy-friendly, offline-safe and highly legible
   across Windows, macOS, iOS, Android and Linux. */
:root{
  --font-ui:Inter,"SF Pro Text","SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-display:Inter,"SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
}
html{font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body,button,input,select,textarea{font-family:var(--font-ui);font-kerning:normal;font-variant-ligatures:common-ligatures}
body{font-size:1rem;line-height:1.6;letter-spacing:-.005em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,h3,h4,h5,h6,.brand,.brand-copy strong,.header-kicker,.nav-group-label{font-family:var(--font-display);text-wrap:balance}
h1{font-weight:750;letter-spacing:-.035em}
h2{font-weight:720;letter-spacing:-.025em}
h3,h4{font-weight:700;letter-spacing:-.015em}
p,li,dd,td,.muted{line-height:1.6}
label,th,.eyebrow,.header-kicker,.nav-group-label{letter-spacing:.01em}
button,.btn,input,select,textarea{font-size:.9375rem;line-height:1.45}
input::placeholder,textarea::placeholder{opacity:1;color:#7f9198}
small{line-height:1.5}
code,kbd,pre,.secret,.event-code,.ah49-event-code{font-family:var(--font-mono)}

/* Clean application shell typography. */
.app-header h1{font-weight:740;letter-spacing:-.025em}
.brand-copy strong,.user-chip-copy strong,.user-mini strong{font-weight:700}
.sidebar-nav,.app-header,.app-content{font-family:var(--font-ui)}
.nav-item{font-weight:600;letter-spacing:-.005em}
.nav-group-label,.header-kicker{font-weight:700;letter-spacing:.065em}

/* Improve readability where legacy screens used unusually tiny labels. */
.login-form-v7__heading p{font-size:.875rem;line-height:1.65}
.login-field-v7__label,.login-field-v7__label-row{font-size:.8125rem;font-weight:700}
.login-field-v7__label-row a{font-size:.8125rem}
.login-input-v7 input{font-size:.9375rem}
.login-submit-v7{font-size:.875rem;font-weight:700}
.login-account-v7{font-size:.8125rem}
.login-security-v7 strong{font-size:.75rem}
.login-security-v7 small{font-size:.6875rem}
.login-access-v7__footer,.login-access-v7__footer a{font-size:.75rem}
.login-flash-v7{font-size:.8125rem}

/* Mobile: preserve readability without inflating layouts. */
@media(max-width:600px){
  body{font-size:1rem;line-height:1.58}
  button,.btn,input,select,textarea{font-size:1rem}
  .login-form-v7__heading p{font-size:.875rem}
  .login-access-v7__topbar{font-size:.75rem}
}
