/* Structural accessibility fixes apply by default, without using the display panel. */
:root{--muted:#526359}
.art-note{color:#526359}.lesson-net>span{line-height:1.1}
.brand-icon{width:2.6875rem;height:2.6875rem;flex-shrink:0;background:#183e36;color:#d8ec9d}.brand small{white-space:normal}
.diamond{background:#5d7134}.triangle{background:#995128}
html.a11y-contrast .art-note{color:#fff}html.a11y-contrast .facts-strip,html.a11y-contrast .category-art{background:#101010;color:#fff}
html.a11y-contrast .numbers-art span{color:#ffe66b}html.a11y-contrast .logic-art span{background:#101010;color:#fff;border-color:#fff}
html.a11y-contrast .matrix{background:#f8f8f2;border-radius:12px;color:#183e36}html.a11y-contrast .matrix .missing{color:#183e36}
html.a11y-contrast .demo-answers button{background:#fff;border-color:#fff}html.a11y-contrast .demo-answers button.selected{outline:3px solid #ffe66b;outline-offset:3px}
main{overflow:visible}
h1,h2,h3,.hero-copy,.primary,.secondary,.header .brand{overflow-wrap:anywhere}
.primary,.secondary{max-width:100%;white-space:normal}.spatial-entry .primary{white-space:normal}
:focus-visible{outline:3px solid #183e36!important;outline-offset:4px!important;box-shadow:0 0 0 7px #fff!important}
html.a11y-contrast :focus-visible{outline-color:#ffe66b!important;box-shadow:0 0 0 7px #101010!important}
.skip{z-index:1000;max-width:calc(100% - 40px)}
.footer{padding-bottom:7rem}.footer a,.footer button,.quick-start,.text-btn,.lesson-related a{min-height:44px}
.question-map button{min-width:44px;min-height:44px;width:auto;height:auto;padding:5px;display:inline-flex;align-items:center;justify-content:center;gap:2px}
.map-marker{font-size:.65rem}.timer-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.timer-controls button{font-size:.75rem}
.diagram-description{margin-top:1rem;color:var(--ink);font-size:.875rem}.diagram-description summary,.spatial-description summary{min-height:44px;cursor:pointer;padding-block:8px}.diagram-description p{line-height:1.8;overflow-wrap:anywhere}
.spatial-controls button{min-height:44px}.projection-option small{font-size:.8rem;color:#405642;line-height:1.6}.daily-options .projection-option small{color:inherit}
.spatial-scene .spatial-caption,.spatial-scene .spatial-description,.spatial-scene .spatial-description p{color:#405642}
.support-dialog select,.setup-grid select{min-width:0}.support-dialog label{flex-wrap:wrap}.support-dialog label:has(input){flex-wrap:nowrap}.support-dialog label>span{min-width:0}
.support-dialog .support-actions>*{max-width:100%;overflow-wrap:anywhere}.question-card,.lesson-card,.score-card,.breakdown-card{min-width:0}
.hero-art{overflow:visible}.hero-art .orbit,.hero-art .floating-star{pointer-events:none}.puzzle-card{transform:none}.hero-art:before{display:none}
html.a11y-contrast .session-label,html.a11y-contrast .spatial-description,html.a11y-contrast .spatial-caption{color:#fff}
html.a11y-contrast .spatial-scene .spatial-description,html.a11y-contrast .spatial-scene .spatial-description p,html.a11y-contrast .spatial-scene .spatial-caption{color:#183e36}
html.a11y-contrast .spatial-controls button{--ink:#fff}html.a11y-contrast .replace-warning{background:#101010;border:1px solid #fff;color:#fff}
html.a11y-contrast .primary{background:#ffe66b;color:#101010}html.a11y-contrast .primary:hover{background:#fff;color:#101010}
html.a11y-contrast .lesson-number,html.a11y-contrast .diagram-description{color:#fff}
html.a11y-contrast .lesson-formula{background:#edf3e4;color:#183e36}
html.a11y-contrast .projection-option small{color:inherit}
@media(max-width:800px){.header nav{display:flex!important;order:4;width:100%;gap:.4rem 1rem;font-size:.875rem}.header nav a{min-height:44px;display:inline-flex;align-items:center}.hero-art .orbit,.floating-star{display:none}.puzzle-card{padding:20px 14px}.matrix{max-width:100%;width:240px;gap:6px}.matrix>i,.matrix>span{margin:6px}.question-grid{max-width:100%}.spatial-entry>div:nth-child(2){min-width:0}.lesson-main .lesson-actions>*{max-width:100%}}
@media(max-width:480px){#answers{grid-template-columns:1fr}.quiz-progress{flex-wrap:wrap}.quiz-controls>*{max-width:100%;white-space:normal}.hero-actions,.quiz-controls{align-items:stretch}.score-card,.breakdown-card{padding:20px 14px}.score-ring{max-width:100%}.header .brand{max-width:100%;white-space:normal}.header .brand>span:last-child{min-width:0}.support-dialog{padding:18px}.spatial-scene{padding:8px}}
html[style*="150%"] .hero,html[style*="200%"] .hero,html[style*="200%"] .training-history,html[style*="200%"] .lesson-grid{grid-template-columns:1fr}
html[style*="200%"] .hero-art{min-height:0}html[style*="200%"] .puzzle-card{width:100%}html[style*="200%"] .hero-art .orbit,html[style*="200%"] .floating-star{display:none}
html[style*="200%"] .score-ring{width:auto;height:auto;border-radius:12px;padding:1rem}html[style*="200%"] .score-ring>div{width:100%;height:auto;border-radius:8px;padding:1rem}
html[style*="200%"] .support-dialog label{display:block}html[style*="200%"] .support-dialog label:has(input){display:flex}html[style*="200%"] .support-dialog select{display:block;width:100%}
html[style*="200%"] .learning-entry{flex-direction:column;align-items:stretch}html[style*="200%"] .quiz-controls{flex-direction:column}
@media(forced-colors:active){.answer,.question-map button,.primary,.secondary,button{border:1px solid ButtonText}.answer:has(input:checked),.question-map button.current{outline:2px solid Highlight}.shape,.question-grid,.question-sequence,.lesson-figure,.spatial-scene svg,.projection-option svg{forced-color-adjust:none}.answer input{forced-color-adjust:auto}}
@media print{.diagram-description,.timer-controls,.map-marker{display:none}.footer{padding-bottom:0}}

#daily .diagram-description{color:#fff}#daily .diagram-description p{color:#fff}
