/* LeuwongRR global Open Sans + smooth typography patch - 2026-05-11
   Uses Google Fonts Open Sans in every public/member/admin/auth layout. */
:root{
  --lrr-font-sans:"Open Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --lrr-text-smoothing:antialiased;
  --lrr-ease-smooth:cubic-bezier(.2,.8,.2,1);
}
html{
  font-family:var(--lrr-font-sans)!important;
  font-size:16px;
  text-rendering:optimizeLegibility;
  -webkit-text-size-adjust:100%;
  scrollbar-gutter:stable;
}
body,
button,input,select,textarea,
.btn,.form-control,.form-select,.dropdown-menu,.modal,.offcanvas,.navbar,.card,.table,.alert,.badge,
.lrr-builder-root,.admin-shell,.member-shell,.auth-clean-body{
  font-family:var(--lrr-font-sans)!important;
  -webkit-font-smoothing:var(--lrr-text-smoothing);
  -moz-osx-font-smoothing:grayscale;
}
body{
  font-weight:400;
  line-height:1.62;
  letter-spacing:-.008em;
  font-synthesis-weight:none;
  font-optical-sizing:auto;
}
h1,h2,h3,h4,h5,h6,
.brand-name,.member-brand strong,.admin-brand strong,
.lrr-hero h1,.lrr-keyword-hero h1,.company-hero h1,.legal-hero h1,.lrr-news-detail-header h1,
.lrr-premium-btn,.lrr-btn-main,.lrr-btn-ghost,.legal-card__link{
  font-family:var(--lrr-font-sans)!important;
  font-weight:800;
  letter-spacing:-.045em;
  text-wrap:balance;
}
p,li,small,.brand-sub,.text-muted,.lrr-copy,.lrr-lead,.legal-section p,.lrr-news-content-html{
  letter-spacing:-.006em;
}
a,.btn,button,[role="button"],.form-control,.form-select,.card,.alert,.legal-card,.lrr-keyword-card,.company-card,.lrr-news-content{
  transition:color .18s var(--lrr-ease-smooth),background-color .18s var(--lrr-ease-smooth),border-color .18s var(--lrr-ease-smooth),box-shadow .18s var(--lrr-ease-smooth),transform .18s var(--lrr-ease-smooth),opacity .18s var(--lrr-ease-smooth);
}
.form-control,.form-select,textarea,input{
  letter-spacing:-.006em;
  caret-color:var(--lrr-accent,#7eff2f);
}
::selection{background:rgba(126,255,47,.25);color:#fff}
img,svg,video{max-width:100%;height:auto}
@media(max-width:760px){
  body{letter-spacing:-.006em;line-height:1.6}
  h1,h2,h3,h4,h5,h6{letter-spacing:-.038em}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}
}
