/* v95 LTS contrast and readability hotfix — loaded last */
:root{--a11y-text:#132f3f;--a11y-muted:#405865;--a11y-link:#005f87;--a11y-dark:#071f31;--a11y-light:#ffffff;--a11y-border:#b8c9d1}
html{color-scheme:light}body{color:var(--a11y-text);background:#fff}p,li,dd,td,th,label,small,.lead,.muted,.help,.hint,.subtitle,.description{color:inherit}
a{color:var(--a11y-link)}a:hover,a:focus{color:#003d59}input,select,textarea,button{color:#102f3f;background-color:#fff}input::placeholder,textarea::placeholder{color:#596e78;opacity:1}
/* light surfaces */
.card,.panel,.tool-card,.academy-card,.hub-card,.result-card,.summary-card,.workspace-card,.ca-panel,.ca-summary-card,.ca-finding,.ca-method-card,[class*="card"]{color:#132f3f}
.card p,.panel p,.tool-card p,.academy-card p,.hub-card p,.result-card p,.summary-card p,.workspace-card p,.ca-panel p,.ca-summary-card p,.ca-finding p,.ca-method-card p{color:#405865}
/* dark and gradient surfaces */
.hero,.page-hero,.dark-section,.dark-panel,.site-footer,.platform-footer,.utility-bar,[class*="hero"][style*="background"],.ca-hero,.ca-risk-box,.pillar-route a.active{color:#fff}
.hero h1,.hero h2,.hero h3,.page-hero h1,.page-hero h2,.page-hero h3,.dark-section h1,.dark-section h2,.dark-section h3,.dark-panel h1,.dark-panel h2,.dark-panel h3,.site-footer h1,.site-footer h2,.site-footer h3,.site-footer strong,.platform-footer strong,.ca-hero h1,.ca-hero h2,.ca-hero h3,.ca-risk-box h1,.ca-risk-box h2,.ca-risk-box h3{color:#fff}
.hero p,.hero li,.hero small,.page-hero p,.page-hero li,.page-hero small,.dark-section p,.dark-section li,.dark-section small,.dark-panel p,.dark-panel li,.dark-panel small,.site-footer p,.site-footer span,.site-footer small,.platform-footer p,.platform-footer span,.platform-footer small,.ca-hero p,.ca-risk-box p{color:#e5eef2}
.site-footer a,.platform-footer a,.utility-bar a,.dark-section a,.dark-panel a,.ca-hero a,.ca-risk-box a{color:#bfefff}.site-footer a:hover,.platform-footer a:hover,.dark-section a:hover,.dark-panel a:hover{color:#fff}
/* buttons */
.btn-primary,.button-primary,.primary-action,.ca-btn.primary{background:#006f67!important;color:#fff!important}.btn-dark,.button-dark,.ca-btn.dark{background:#092b42!important;color:#fff!important}.btn-light,.button-light,.ca-btn.light{background:#f3f7f9!important;color:#17394a!important;border-color:#9fb4be!important}
/* status and chips */
.badge,.chip,.tag,.eyebrow,.kicker{font-weight:800}.status-good,.ca-status.good{background:#dff3e8!important;color:#125333!important}.status-warn,.ca-status.warn{background:#fff0c7!important;color:#684600!important}.status-bad,.ca-status.bad{background:#f9deda!important;color:#76241f!important}.ca-status.info{background:#dceff8;color:#174f68}.ca-finding.unknown{border-style:dashed;background:#f5f8fa}.ca-finding.unknown .ca-finding-icon{background:#dfe8ed;color:#294d5d}.ca-finding.unknown em{background:#dfe8ed;color:#294d5d}
/* analyzer readability */
.ca-confirm{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:12px 14px;border:1px solid #b8cbd3;border-radius:12px;background:#f4f8fa;color:#203f4e;font-weight:700;line-height:1.45}.ca-confirm input{width:18px;height:18px;margin-top:2px;flex:0 0 auto}.ca-coverage{margin:0 0 16px;padding:14px 16px;border-left:4px solid #167b9b;background:#eaf5f9;color:#173f50;border-radius:0 12px 12px 0;font-weight:700}.ca-help{color:#405865}.ca-panel-head p,.ca-finding p,.ca-method-card p,.ca-results-head p,.ca-intro p{color:#405865}.ca-side-item{color:#405865}.ca-file-meta small{color:#405b58}
/* keyboard focus */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffbf47!important;outline-offset:3px!important}
/* prevent pale text on white caused by inherited theme rules */
main :where(section,article,div):not(.hero):not(.page-hero):not(.dark-section):not(.dark-panel):not(.site-footer):not(.platform-footer):not(.ca-hero):not(.ca-risk-box) > :where(p,li,small,span){text-shadow:none}
@media (forced-colors:active){*{forced-color-adjust:auto}.ca-score-ring{background:CanvasText}.ca-score-ring:before{background:Canvas}}
