/* Roboto (self-hosted, OFL; Open Sans kept in opensans.css) for headers, tab bar and sub-button row only (Jayson 16/10/2026). Body text unchanged. */
@font-face{font-family:'Roboto';font-style:normal;font-weight:400;font-display:swap;src:url('roboto-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:500;font-display:swap;src:url('roboto-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:700;font-display:swap;src:url('roboto-latin-700-normal.woff2') format('woff2')}
h1,h2,h3,h4,.ab-head,.ab-tabs,.ab-tabs a,.ab-tabs button,.ab-sub a,.ab-sub button,.ab-sub label,.ab-bar a,.ab-bar button,.ab-day,.ab-pop h3,.ab-dlg h3,.ch-card h3,.navbar,.navbar a,.navbar-brand,.nav>li>a,.page-header,.panel-heading,.panel-title{font-family:'Roboto','Segoe UI',Arial,sans-serif}
/* All buttons (Jayson 16/10/2026 21:13): native buttons + portal button/pill/chip classes. */
button,input[type=button],input[type=submit],input[type=reset],.btn,a.btn,[role=button],.ab-btn,.ab-btn2,.ab-pb,.ab-psb,.ab-signbtn,.ab-tab,.ac-tab,.ad-btn,.al-btn,.ch-btn,.ch-modebtn,.ch-toggle,.ch-msel-chip,.cx-btn,.cx-tab,.da-chip,.da-tray-b,.dr-btn,.et-b,.et-pb,.et-chip,.kb-text-btn,.lm-chip,.lm-tpl-btn,.mpp-button,.navbar-toggle,.pt-b,.qn-b,.qn-sb,.qn-pb,.ra-btn,.ra-btn-ghost,.ra-btn-sm,.ra-chip,.sh-pill,.us-btn,.xh-b,.lm-pop-save,.ab-tpl-btn{font-family:'Roboto','Segoe UI',Arial,sans-serif!important}
/* Shorter main tabs on every screen size (Jayson 17/10/2026). */
.ab-top a.ab-tab,.ab-tabs .ab-tab{margin-top:6px!important;padding-top:6px!important;padding-bottom:7px!important}
.ab-top a.ab-tab.is-on,.ab-tabs .ab-tab.is-on{margin-top:3px!important;padding-bottom:9px!important}
.ab-top{min-height:44px!important}
/* Mobile tidy-up (Jayson 17/10/2026), phones / narrow screens only - desktop unaffected. */
@media (max-width:820px){
  .ab-colpick,#ab-cols-btn,#ab-cols{display:none!important}
  #ab-who,.ab-who{display:none!important}
  .ab-top a.ab-tab,.ab-tabs .ab-tab{margin-top:4px!important;padding:5px 8px 6px!important;font-size:12.5px!important;line-height:1.2}
  .ab-top a.ab-tab.is-on,.ab-tabs .ab-tab.is-on{margin-top:2px!important;padding-bottom:8px!important}
  .ab-top{min-height:38px!important}
  /* Prev / Today / Next / date on one row; day label + view controls wrap below */
  form.ab-bar{display:flex!important;flex-wrap:wrap!important;align-items:center;gap:4px!important;justify-content:flex-start!important}
  form.ab-bar>a,form.ab-bar>input[type=date]{flex:0 1 auto!important;min-width:0;margin:0!important;white-space:nowrap}
  form.ab-bar>input[type=date]{width:8.6em!important;max-width:40vw;font-size:13px!important;padding:3px 4px!important}
  form.ab-bar>.ab-day,form.ab-bar>.ab-view,form.ab-bar>.ab-leads-title,form.ab-bar>.ab-leads-pop{order:5;flex:1 0 100%!important;margin-left:0!important}
  .da-row.da-tap{cursor:pointer}
  /* Compact Prev / Today / Next, same height as the date picker (17/10 20:17) */
  form.ab-bar>a{display:inline-flex!important;align-items:center;height:30px!important;min-height:30px!important;padding:0 9px!important;line-height:1!important;font-size:12.5px!important;box-sizing:border-box}
  form.ab-bar>input[type=date]{height:30px!important;min-height:30px!important;box-sizing:border-box;line-height:1!important}
  .ab-sub a,.ab-sub button,.ab-bar a,.ab-bar button{padding:5px 8px!important;font-size:12.5px!important;min-height:32px;line-height:1.2}
  .btn,a.btn,input[type=button],input[type=submit],input[type=reset],.ab-btn,.ab-btn2,.ab-signbtn,.ac-tab,.ad-btn,.al-btn,.ch-btn,.ch-modebtn,.cx-btn,.cx-tab,.dr-btn,.et-b,.et-pb,.kb-text-btn,.lm-tpl-btn,.mpp-button,.pt-b,.qn-b,.qn-sb,.ra-btn,.ra-btn-sm,.us-btn,.xh-b{padding:5px 10px!important;font-size:13px!important;min-height:32px;line-height:1.2}
}
/* Patient details: each field group as a soft tinted panel (Jayson 17/10/2026). */
.pd-sec{background:#f4f8fb!important;border:1px solid #d3e3ec!important;border-radius:10px!important;padding:8px 12px 12px!important;box-shadow:0 1px 2px rgba(18,63,82,.06)}
.pd-sec legend{background:#e3f2fd;border:1px solid #90caf9;border-radius:999px;padding:2px 10px!important;color:#123f52!important;font-size:12px}
.pd-sec input,.pd-sec select,.pd-sec textarea{background:#fff}
