/* Functional accessibility repairs. Visual overrides are scoped to their pages. */
[hidden]{display:none!important}
/* Focus indicators affect keyboard focus only, not the resting design. */
:focus-visible{outline:3px solid #006c70!important;outline-offset:4px!important;box-shadow:0 0 0 2px #fff!important;scroll-margin-block:110px}
html[data-theme="dark"] :focus-visible,.dark :focus-visible{outline-color:#a0f2ef!important;box-shadow:0 0 0 2px #071923!important}
.a11y-skip{position:fixed;left:16px;top:8px;z-index:1000;padding:12px 18px;background:#0b3c5d;color:#fff!important;transform:translateY(-160%);text-decoration:underline}
.a11y-skip:focus{transform:none}
/* The requested statement uses the existing footer rather than a new white panel. */
.accessibility-statement{display:block;width:min(1180px,calc(100% - 40px));max-width:100%;flex-basis:100%;box-sizing:border-box;margin:16px auto 0;padding:0;border:0;border-radius:0;background:transparent;color:inherit!important;text-align:left;font:inherit;line-height:1.6;letter-spacing:normal}
.accessibility-statement summary{display:list-item;cursor:pointer;font-weight:600;color:inherit!important;padding:4px 0;min-height:24px;text-decoration:underline;text-underline-offset:3px}
.accessibility-statement p{color:inherit!important;font:inherit;line-height:1.6;margin:12px 0}
.accessibility-statement a{color:inherit!important;text-decoration:underline!important;overflow-wrap:anywhere}
/* Original custom inputs stay visually hidden; their labels show keyboard focus. */
.cps-calculator .country-card:focus-within,.cps-calculator .level-grid label:focus-within,.cps-calculator .skill:focus-within,.cps-calculator .search-wrap:focus-within,.cps-dictionary .search-wrap:focus-within{outline:3px solid #006c70;outline-offset:3px}
/* Normal-size text needs 4.5:1; large text needs 3:1. Keep brand backgrounds. */
.cps-calculator .section-kicker,.cps-calculator .skill-tools>span,.cps-calculator .method-grid span,.cps-calculator .formula span{color:#007579}
.cps-calculator .intro h1 em{color:#008d91}
.cps-calculator .skill input:checked+span{color:#007579}
.cps-calculator .result-panel button{color:#062f40}
/* The original light-theme SQL Run button already has sufficient text contrast. */
html:not([data-theme="dark"]) .cps-sql-game .eyebrow,html:not([data-theme="dark"]) .cps-sql-game .xp-total,html:not([data-theme="dark"]) .cps-sql-game .mission-xp,html:not([data-theme="dark"]) .cps-sql-game .objective-box strong,html:not([data-theme="dark"]) .cps-sql-game .program-action,html:not([data-theme="dark"]) .cps-sql-game .game-title-sql{color:#007579}
.cps-sql-game .schema-card summary span{color:var(--muted)}
/* Only small SQL text on pale surfaces changes; borders, controls and artwork do not. */
.cps-sql-learning .text-button,.cps-sql-learning .lesson-link.done .lesson-number,.cps-sql-learning .eyebrow,.cps-sql-learning .lesson-meta .completed,.cps-sql-learning .jump-links a:hover,.cps-sql-learning .practice-support details summary,.cps-sql-learning .lesson-card .card-meta,.cps-sql-learning .resource-card .type,.cps-sql-learning .visual-query summary,.cps-sql-learning .read-more summary,.cps-sql-learning .demo-label,.cps-sql-learning .demo-result>span,.cps-sql-learning .route-action,.cps-sql-learning .learning-rhythm li>span,.cps-sql-learning .path-heading>span,.cps-sql-learning .row-number,.cps-sql-learning .row-meta{color:#007579}
.cps-join .card .kind,.cps-join .text-link:hover{color:#007579}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(forced-colors:active){:focus-visible{outline:3px solid Highlight!important}.accessibility-statement{color:CanvasText!important}}
