/* One typography scale across SIDPOL, DGIS and production views. */
:root{
    --odc-heading-font: "Segoe UI", Arial, sans-serif;
    --odc-title-size: 24px;
    --odc-section-size: 18px;
    --odc-heading-weight: 600;
}
/* Match the specificity of legacy source-specific rules without touching icons. */
html body,
body :is(.main-content, .sidebar, #dgisWorkspace, #productionPortal),
body :is(.main-content, .sidebar, #dgisWorkspace, #productionPortal) :is(h1,h2,h3,h4,p,label,span,strong,b,small,a,select,option,input,button,th,td,li,svg text){
    font-family: var(--odc-heading-font) !important;
    letter-spacing: 0 !important;
}
body :is(.main-content, #dgisWorkspace, #productionPortal) h1{
    font-size: var(--odc-title-size) !important;
    font-weight: var(--odc-heading-weight) !important;
    line-height: 1.35 !important;
    text-transform: none !important;
}
body :is(.main-content, #dgisWorkspace, #productionPortal) h2,
body :is(.main-content, #dgisWorkspace, #productionPortal) :is(.panel-header,.section-header,.oa-section-title,.odc-overview) h3{
    font-size: var(--odc-section-size) !important;
    font-weight: var(--odc-heading-weight) !important;
    line-height: 1.35 !important;
    text-transform: none !important;
}
body :is(.main-content, #dgisWorkspace, #productionPortal) :is(select,input,button){
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
}
body :is(.main-content, #dgisWorkspace, #productionPortal) label{
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}
.main-content h1,
.main-content h2,
.main-content .panel-header h3,
.main-content .section-header h3,
.main-content .oa-section-title h3,
.main-content .odc-overview h3{
    font-family: var(--odc-heading-font) !important;
    font-size: var(--odc-section-size) !important;
    font-weight: var(--odc-heading-weight) !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}
.main-content .hero h1,
.main-content .strategic-hero h2,
.main-content .oa-header h2,
.main-content .compare-report-header h2,
.main-content .temporal-heading h2,
.main-content .production-title-block > p{
    font-family: var(--odc-heading-font) !important;
    font-size: var(--odc-title-size) !important;
    font-weight: var(--odc-heading-weight) !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}
.main-content .eyebrow,
.main-content .oa-header small,
.main-content .oa-section-title small,
.main-content .ov-eyebrow{
    font-family: var(--odc-heading-font);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0;
}
.main-content .production-score-card > strong{
    font-family: var(--odc-heading-font);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.3;
}
.main-content .production-command-hero .production-stamp strong{
    font-size: 16px;
    font-weight: 600;
}
@media (max-width: 820px){
    .main-content .production-chart-wide{grid-column:auto}
    .main-content .production-visual-card{min-width:0}
    .main-content .production-visual-card .panel-header{flex-wrap:wrap}
    .main-content .production-column-chart{max-width:100%;overflow-x:auto}
    .main-content .production-column-plot{min-width:580px}
}
