/* Section identity: Compete purple, Career teal, Skill Lab blue. */
:root{--vx-compete:#7040b8;--vx-career:#007f78;--vx-skills:#0071ba}
.vx-header .vx-compete{--menu-accent:#7040b8;--menu-soft:#f7f3ff}.vx-header .vx-career{--menu-accent:#007f78;--menu-soft:#effaf8}.vx-header .vx-skills{--menu-accent:#0071ba;--menu-soft:#f1f7ff}
.vx-header :is(.vx-compete,.vx-career,.vx-skills)>summary,.vx-header :is(.vx-compete,.vx-career,.vx-skills)>summary svg{color:var(--menu-accent)!important}
.vx-header :is(.vx-compete,.vx-career,.vx-skills)[open]>summary{color:var(--menu-accent)!important;background:var(--menu-soft)!important}
.vx-header :is(.vx-compete,.vx-career,.vx-skills) .vx-panel{border-top-color:var(--menu-accent)!important}
.vx-header :is(.vx-compete,.vx-career,.vx-skills) .vx-panel a:hover,.vx-header :is(.vx-compete,.vx-career,.vx-skills) .vx-panel a:focus-visible{color:var(--menu-accent)!important;background:var(--menu-soft)!important}
.vx-header .vx-career .cj-career-menu>a.vn-link>svg{color:var(--menu-accent)!important}
.vx-header :is(.vx-compete,.vx-career,.vx-skills) button[aria-pressed=true]{color:var(--menu-accent)!important;background:var(--menu-soft)!important;border-color:var(--menu-accent)!important}
[data-vx-section=compete]{--section-accent:#7040b8;--section-soft:#f7f3ff;--section-line:#e3d7f7}
[data-vx-section=career]{--section-accent:#007f78;--section-soft:#effaf8;--section-line:#cce7e3}
[data-vx-section=skills]{--section-accent:#0071ba;--section-soft:#f1f7ff;--section-line:#d4e5fa}
html[data-vx-section] main :is(.button,.primary,.cc-primary,.cta,.vx-button,.cj-actions>button,.cj-actions>a),main[data-vx-section] :is(.button,.primary,.cc-primary,.cta,.vx-button,.cj-actions>button,.cj-actions>a){background:var(--section-accent)!important;border-color:var(--section-accent)!important;color:#fff!important}
html[data-vx-section] main :is(.button,.primary,.cc-primary,.cta,.vx-button):hover,main[data-vx-section] :is(.button,.primary,.cc-primary,.cta,.vx-button):hover{filter:brightness(.92)}
html[data-vx-section] main :is(.overview-label,.cc-topic-label,.eyebrow,.vx-kicker,.resource-kicker),main[data-vx-section] :is(.overview-label,.cc-topic-label,.eyebrow,.vx-kicker){color:var(--section-accent)!important}
html[data-vx-section] main :is(.overview-label,.cc-topic-label),main[data-vx-section] .overview-label{background:var(--section-soft)!important}
html[data-vx-section] main :is(.notice,.cj-note,.sl-note),main[data-vx-section] .notice{background:var(--section-soft);border-left-color:var(--section-accent)}
html[data-vx-section] main :is(progress,input[type=checkbox],input[type=radio]),main[data-vx-section] :is(progress,input[type=checkbox],input[type=radio]){accent-color:var(--section-accent)}
html[data-vx-section] main :is(a:not(.button):not(.primary):not(.cc-primary):not(.cta):not(.vx-button)),main[data-vx-section] a:not(.button){color:var(--section-accent)}
html[data-vx-section] main :is(input,select,textarea):focus-visible,main[data-vx-section] :is(input,select,textarea):focus-visible{outline-color:var(--section-accent)}

/* Native contest controls share the section identity, including results and tools. */
main.pilot-main[data-vx-section=compete] button{background:var(--section-accent);color:#fff}
main.pilot-main[data-vx-section=compete] button:hover{filter:brightness(.92)}
main.pilot-main[data-vx-section=compete] button.contest-name-edit{background:transparent;color:var(--section-accent)}
main.pilot-main[data-vx-section=compete] button.contest-name-edit:hover{background:var(--section-soft)}
main.pilot-main[data-vx-section=compete] .option:has(:checked){border-color:var(--section-accent);background:var(--section-soft)}
