/* Shared readable text scale; page layouts must not shrink these roles. */
:root{--hn-text-body:16px;--hn-text-support:14px;--hn-text-control:15px}
body{font-size:var(--hn-text-body);line-height:1.6}
body :is(.page-heading p,.company-description p,.login-action>p,.login-copy p,.selection-empty p,.company-management .home-cards p){font-size:var(--hn-text-body);line-height:1.6}
body :is(small,figcaption,.section-label,.panel-heading>span,.list-note,.access-note,.supplier-empty,.commercial-note,.home-footnote,.chat-caption,.inquiry-caption,.page-list-help,.hint,.help-text,.field-hint,.field-help,.login-action small,.demo-bar,.sidebar-company span,.sidebar-company small,.membership-badge,.roles>span,.declared-badge,.inquiry-stage-badge,.login-tags span){font-size:var(--hn-text-support);line-height:1.55}
body :is(button.primary,button.secondary,a.primary,a.secondary,.header-button,.select-button,.selected-button,.login-button){font-size:var(--hn-text-control)}
body :is(.global-header .account,.hn-v14>header .landing-account,.top-service-navigation #platform-menu .rail-label,.hn-v14>header>nav>a,.app-sidebar nav a){font-size:var(--hn-text-control)}
body :is(.supplier-panel,.card-dialog-content,.company-panel,.access-panel) :is(input:not([type=checkbox]):not([type=radio]),textarea,select){font-size:16px;line-height:1.5}
body :is(.supplier-panel,.card-dialog-content,.company-panel,.access-panel) :is(label,th,td){font-size:var(--hn-text-support);line-height:1.55}
@media(max-width:599px){:root{--hn-text-body:15px}body :is(.global-header .account,.hn-v14>header .landing-account,.top-service-navigation #platform-menu .rail-label,.hn-v14>header>nav>a){font-size:var(--hn-text-support)}}

/* Override only the intersection of approved roles and legacy important size rules.
   :where adds no specificity; source role ordering/specificity is preserved. */
body :is(.page-heading p,.company-description p,.login-action>p,.login-copy p,.selection-empty p,.company-management .home-cards p):where(p){font-size:var(--hn-text-body)!important;line-height:1.6!important}
body :is(small,figcaption,.section-label,.panel-heading>span,.list-note,.access-note,.supplier-empty,.commercial-note,.home-footnote,.chat-caption,.inquiry-caption,.page-list-help,.hint,.help-text,.field-hint,.field-help,.login-action small,.demo-bar,.sidebar-company span,.sidebar-company small,.membership-badge,.roles>span,.declared-badge,.inquiry-stage-badge,.login-tags span):where(p,button,input,select,textarea,.home-cards a,.home-cards article,#platform-menu a,.sidebar-company){font-size:var(--hn-text-support)!important;line-height:1.55!important}
body :is(button.primary,button.secondary,a.primary,a.secondary,.header-button,.select-button,.selected-button,.login-button):where(p,button,input,select,textarea,.home-cards a,.home-cards article,#platform-menu a,.sidebar-company){font-size:var(--hn-text-control)!important}
body :is(.global-header .account,.hn-v14>header .landing-account,.top-service-navigation #platform-menu .rail-label,.hn-v14>header>nav>a,.app-sidebar nav a):where(p,button,input,select,textarea,.home-cards a,.home-cards article,#platform-menu a,.sidebar-company){font-size:var(--hn-text-control)!important}
body :is(.supplier-panel,.card-dialog-content,.company-panel,.access-panel) :is(input:not([type=checkbox]):not([type=radio]),textarea,select):where(input,textarea,select){font-size:16px!important;line-height:1.5!important}
@media(max-width:599px){body :is(.global-header .account,.hn-v14>header .landing-account,.top-service-navigation #platform-menu .rail-label,.hn-v14>header>nav>a):where(p,button,input,select,textarea,.home-cards a,.home-cards article,#platform-menu a,.sidebar-company){font-size:var(--hn-text-support)!important}}
