/* Shared type system. The same roles apply to Vietnamese, English and API copy.
   Important declarations here own typography only; route geometry stays in its existing sheets. */
@font-face{font-family:RobotoCondensed;src:url('/assets/roboto-condensed-vi-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:RobotoCondensed;src:url('/assets/roboto-condensed-full-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:RobotoCondensed;src:url('/assets/roboto-condensed-vi-bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--font-ui:RobotoCondensed,'Arial Narrow',Arial,sans-serif;--font-numeric:Teko,RobotoCondensed,sans-serif;--type-page:36px;--type-section:20px;--type-subsection:18px;--type-body:16px;--type-data:14px;--type-meta:13px}
body{font-family:var(--font-ui);font-size:var(--type-data);line-height:1.45}
#detail-view{font-family:var(--font-ui);font-size:var(--type-body);line-height:1.5}
body h2{font-size:var(--type-section)!important}
body h3{font-size:var(--type-subsection)!important}
body :is(h1,h2,h3,h4,h5,h6){font-family:var(--font-ui)!important;font-weight:700!important;letter-spacing:0;line-height:1.3}
body :is(.view-heading h1,.archive-heading h1){text-transform:uppercase;font-size:var(--type-page)!important;line-height:1.2!important;letter-spacing:0!important}
body :is(.panel-heading h2,.view-card h2,.view-shell h2,.profile-section-heading h2,.profile-legacy h2,.archive-list-heading h2,.match-panel-heading h3,.view-policy h2,.view-sources h2){font-size:var(--type-section)!important;line-height:1.3!important;font-weight:700!important;letter-spacing:0!important}
body :is(.profile-story h3,.view-card h3,.match-dossier h3,.archive-pitch-dialog>h2,.view-error h2){font-size:var(--type-subsection)!important;line-height:1.35!important}
body :is(.match-archive-body>h2,.dialog-heading h2){font-size:24px!important;line-height:1.3!important}
body .profile-identity h2{font-size:clamp(40px,4.4vw,56px)!important;line-height:1.1!important;letter-spacing:0!important}
body :is(.view-heading>p,.profile-identity>p,.profile-story article>p,.profile-legacy>p,.match-story,.match-insights article>p,#dialog-content p,#dialog-content li){font-family:var(--font-ui)!important;font-size:var(--type-body)!important;font-weight:400;line-height:1.5!important}
body :is(.view-dateline,.profile-intro figcaption,.profile-source,.view-footer,.view-stat-disclaimer,.match-coverage-note,.match-record-coverage,.match-metadata-chips,.news-item-meta,.news-status-row>time,.news-notice,.archive-list-status){font-family:var(--font-ui)!important;font-size:var(--type-meta)!important;line-height:1.5!important}
body :is(.view-fixture-team>strong,.match-score-row>span>strong,.archive-no-video strong,.match-fact-grid strong){font-family:var(--font-ui)!important;font-size:18px!important;font-weight:700!important;line-height:1.3!important}
body :is(.panel-heading .text-button,.method-link,.profile-section-nav button,.profile-actions a,.view-tabs button,.view-primary,.view-link,.archive-text-link,.match-tabs button,.archive-chips button,.archive-load,.match-live-link){font-family:var(--font-ui)!important;font-size:var(--type-data)!important;font-weight:500;line-height:1.4!important}
body :is(.view-table,.home-data-dashboard #history table,.match-cell,.goal-detail,.view-filters input,.view-filters select,.view-fixture-toolbar select){font-family:var(--font-ui)!important;font-size:var(--type-data)!important;line-height:1.45!important}
body :is(.view-table th,.home-data-dashboard #history th){font-size:var(--type-meta)!important;line-height:1.4!important;font-weight:500}
body :is(.home-data-dashboard .filters input,.home-data-dashboard .filters select,.header-search input){font-family:var(--font-ui);font-size:var(--type-data);line-height:1.4}
body :is(.prediction-intro,.prediction-box p,.confidence,.home-goal-card-meta,.team-legend-name,.record-card h3){font-family:var(--font-ui)!important;font-size:var(--type-data)!important;line-height:1.4!important}
body .record-card h3{font-weight:500!important}
body :is(.prediction-box small,.countdown small,.match-source,.team-legend-share,.record-card p,.news-sources,.news-checked){font-family:var(--font-ui)!important;font-size:var(--type-meta)!important;line-height:1.4!important}
body .overview-grid .match-panel .countdown>div{height:50px}
body .overview-grid .match-panel .countdown strong{line-height:24px}
body .overview-grid .match-panel .method-link{min-height:44px}
body .hero-live-title text{font-family:var(--font-ui)!important;font-weight:700}
body .hero-live-title text:last-child{font-weight:500}
body .hero-heading h1{font-family:var(--font-ui)!important}
body .hero-heading h1 strong{font-family:var(--font-ui)!important;font-weight:700}
body :is(.counter,.remaining-shell strong,.progress-stat>strong,.record-card .record-value,.view-kpis strong,.view-milestone-strip>div strong,.view-fixture-center>strong,.view-schedule-snapshot>p>strong,.view-schedule-snapshot button>strong,.view-donut-total,.view-year-column b,.view-form-total>strong,.view-form-records strong,.view-record-value,.archive-counts strong,.match-score-row b,.profile-highlights dd){font-family:var(--font-numeric)!important;font-variant-numeric:tabular-nums}
body :is(.brand>span,.view-footer-brand){font-family:var(--font-numeric)!important}
body .mobile-goals-header>strong{font-family:var(--font-ui)!important;font-size:18px!important;font-weight:700!important;line-height:1.3!important}
@media(max-width:700px){
 :root{--type-page:28px;--type-section:18px;--type-subsection:16px;--type-body:15px;--type-meta:12px}
 body .profile-identity h2{font-size:40px!important;line-height:1.1!important}
 body :is(.match-archive-body>h2,.dialog-heading h2){font-size:21px!important}
 body :is(input,select,textarea){font-family:var(--font-ui)!important;font-size:16px!important;line-height:1.4!important}
 body .hero-heading h1{font-size:18px;font-weight:500!important;letter-spacing:1.4px}
 body .hero-heading h1 strong{font-size:clamp(30px,8.2vw,42px)!important;font-weight:700;line-height:1.2!important}
 body .hero-heading p{font-family:var(--font-ui)!important;font-size:12px!important;line-height:1.5!important;letter-spacing:.3px}
 body :is(.mobile-tabbar a,.language-toggle,.hero-latest-label){font-family:var(--font-ui)!important;font-size:12px!important;line-height:1.4!important}
 body .home-side-stack #team-legend .team-legend-name{font-size:14px!important;line-height:20px!important}
 body .home-side-stack #team-legend li{grid-template-rows:minmax(40px,auto) auto;min-height:90px}
 body .home-side-stack .record-card{min-height:116px}
 body .home-side-stack .record-card h3{min-height:40px}
}
/* Give the shared heading enough room beside its secondary action. */
body .overview-grid .panel-heading{min-height:48px;height:auto;padding-top:10px;padding-bottom:10px;align-items:center}
body .overview-grid .match-panel .panel-heading{padding-left:12px;padding-right:12px;gap:6px}
body .overview-grid .panel-heading h2 span{text-wrap:balance}
body .overview-grid .panel-heading .text-button{font-size:13px!important}
body .overview-grid .match-panel .match-content .match-source{font-family:var(--font-ui)!important;font-size:var(--type-meta)!important;line-height:1.4!important}

body .news-refresh{font-family:var(--font-ui)!important;font-size:24px!important;line-height:1!important}
body .news-rss{font-family:var(--font-ui)!important;font-size:12px!important;line-height:1.4!important;font-weight:500}
body :is(.view-art p,.view-notice p,.view-error p,.view-record>p){font-family:var(--font-ui)!important;font-size:var(--type-body)!important;line-height:1.5!important}
body .goal-video-top h2{font-size:24px!important;line-height:1.3!important}
@media(max-width:700px){body .goal-video-top h2{font-size:21px!important}}
body .overview-grid .match-panel .panel-heading .text-button{padding-left:0}
body :is(.panel-heading .text-button,.method-link,.profile-section-nav button,.profile-actions a,.view-tabs button,.view-link,.archive-text-link,.match-tabs button,.archive-chips button,.archive-load){font-weight:500!important}
body :is(.match-live-link,.view-primary,.profile-action-primary){font-weight:700!important}
body :is(.archive-filters input,.archive-filters select,.archive-list-heading select){font-family:var(--font-ui)!important;font-size:var(--type-data)!important;line-height:1.4!important}
body .hero-latest-label{font-family:var(--font-ui)!important;font-size:var(--type-meta)!important;line-height:1.4!important}
@media(max-width:700px){body :is(.view-filters input,.view-filters select,.view-fixture-toolbar select,.archive-filters input,.archive-filters select,.archive-list-heading select,.header-search input,.home-data-dashboard .filters input,.home-data-dashboard .filters select){font-size:16px!important;line-height:1.4!important}}
body :is(.home-data-dashboard>footer,.home-data-dashboard>footer a,.home-data-dashboard>footer button,.home-data-dashboard>footer .hero-provenance){font-family:var(--font-ui)!important;font-size:var(--type-meta)!important;line-height:1.5!important}
body :is(.pitch-player small,.archive-goal-copy small,.archive-scope){font-family:var(--font-ui)!important;font-size:var(--type-meta)!important;line-height:1.4!important}
