/* KBRIDGE readability refresh - 2026-07-12
   Common typography, tables and selection controls. Functional layout is unchanged. */
:root{
  --kb-readable-body:14px;
  --kb-readable-body-lg:15px;
  --kb-readable-label:12px;
  --kb-readable-control:13px;
  --kb-readable-caption:10.5px;
  --kb-readable-control-h:40px;
  --kb-readable-tab-h:34px;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-size:var(--kb-readable-body)!important;line-height:1.68!important}
p,li,dd,dt,address{font-size:var(--kb-readable-body)!important;line-height:1.68!important}
.hero p,.hero-desc,.hero-copy p,.tool-hero p,.blog-hero p,.section-head p{font-size:var(--kb-readable-body-lg)!important;line-height:1.72!important}
main h1,.hero h1,.tool-hero h1,.blog-hero h1,.article-hero h1{line-height:1.2!important}
main h2,.section-head h2{line-height:1.34!important}
main h3{line-height:1.42!important}
.field label,.form-field label,.form-group label,.nt-field label,.vehicle-field label,label,legend{
  font-size:var(--kb-readable-label)!important;
  line-height:1.42!important;
}
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]),
select:not([multiple]):not([size]){
  height:var(--kb-readable-control-h)!important;
  min-height:var(--kb-readable-control-h)!important;
  max-height:var(--kb-readable-control-h)!important;
  font-size:var(--kb-readable-control)!important;
  line-height:normal!important;
}
textarea{font-size:var(--kb-readable-control)!important;line-height:1.55!important}
.btn,.native-btn,.nt-btn,.header-btn,.tool-open,.kbfx-control button{
  font-size:var(--kb-readable-control)!important;
  line-height:1.15!important;
}
.category-tabs button,.filter-tabs button,.filter-chips button,.type-filter button,
.nt-seg button,.nt-subtabs button,.pallet-toggle button,.charge-chip span,
.safe-search-tab,.route-tabs button,#calculator .tab{
  min-height:var(--kb-readable-tab-h)!important;
  height:var(--kb-readable-tab-h)!important;
  padding-top:0!important;
  padding-bottom:0!important;
  font-size:12px!important;
  line-height:1.15!important;
  white-space:nowrap;
}
.table-wrap,.nt-table-wrap,.result-table-wrap,.safe-table-wrap,.vehicle-table-wrap,.kbfx-table-wrap{
  max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch
}
table{border-collapse:collapse;font-variant-numeric:tabular-nums}
table th{font-size:12px!important;line-height:1.4!important;font-weight:800!important;padding:10px 12px!important;white-space:nowrap}
table td{font-size:13px!important;line-height:1.5!important;padding:10px 12px!important;vertical-align:middle}
.help,.hint,.field-help,.caption,.meta,.note,.nt-help,small{line-height:1.5!important}
.faq-q,.faq-item button{font-size:14px!important;line-height:1.45!important}
.faq-a,.faq-answer{font-size:13px!important;line-height:1.68!important}
@media(max-width:768px){
  :root{--kb-readable-body:13.5px;--kb-readable-body-lg:14px;--kb-readable-label:11.5px;--kb-readable-tab-h:34px}
  input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]),select:not([multiple]):not([size]),textarea{font-size:16px!important}
  table th{font-size:11.5px!important;padding:9px 10px!important}
  table td{font-size:12.5px!important;padding:9px 10px!important}
  .category-tabs button,.filter-tabs button,.filter-chips button,.type-filter button,
  .nt-seg button,.nt-subtabs button,.pallet-toggle button,.charge-chip span,
  .safe-search-tab,.route-tabs button,#calculator .tab{font-size:11.5px!important}
  .faq-q,.faq-item button{font-size:13.5px!important}
  .faq-a,.faq-answer{font-size:12.5px!important}
}
