/* Explicit words accompany all readiness/status colours; the palette is optional. */
:root{--text-scale:1}
body{font-size:calc(16px * var(--text-scale))}
body.colourblind{--red:#b84600;--green:#007c91;--cyan:#167cc0;--purple:#8354b3}
body.colourblind .tag.ok,body.colourblind .tag.low{background:#bceaf3;color:#071e33}
body.colourblind .tag.bad,body.colourblind .tag.high{background:#a63e00;color:white}
body.colourblind .bar>i{background:#087e96}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #111;outline-offset:3px;box-shadow:0 0 0 6px #ffe539}
#topbar .shell-settings{flex:none;background:var(--ivory);border:2px solid var(--ink);font-weight:900;width:44px;height:44px;min-width:44px}
.shell-settings .icon{pointer-events:none}
.error-screen{overflow:auto;align-items:start;padding:clamp(12px,4vw,48px)}
.error-screen .panel{max-width:640px;overflow-wrap:anywhere}
.toast{pointer-events:none}
@media (pointer:coarse){.btn.sm,button.tag{min-height:44px}input[type=checkbox]{width:22px;height:22px}}
@media (max-width:820px){#topbar .shell-settings{width:36px;min-width:36px;height:36px;font-size:13px}#topbar .res{gap:3px}}
body.reduce *,body.reduce *::before,body.reduce *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
/* Scale explanatory text without scaling the battlefield or moving its camera. */
#main .hint{font-size:calc(12px * var(--text-scale))}
#main .sub,#main .tag{font-size:calc(12px * var(--text-scale));white-space:normal}
.help-content,.settings-screen p{font-size:calc(16px * var(--text-scale))}
.help-entry p{font-size:calc(15px * var(--text-scale))}
.tutorial-card,.context-tip{font-size:calc(13px * var(--text-scale))}
.modal.panel{max-height:calc(100dvh - 32px);overflow:auto}
