/* One palette and scale shared by tablet, panel and component catalogue. */
:root{--bg:#f5f5ef;--surface:#fff;--text:#233f36;--muted:#586a60;--border:#dce4dc;--accent:#214e3e;--accent-text:#fff;--soft:#eaf0e8;--danger:#a13932;--danger-soft:#fff0eb;--highlight:#e5edcb;--focus:#426638;--shadow:0 18px 60px #1c3c3012;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-control:8px;--radius-card:12px;--font-body:Inter,system-ui,sans-serif;--font-small:12px;--font-body-size:16px;--font-heading:30px}
:root[data-theme=dark]{--bg:#142720;--surface:#1c332a;--text:#eff4ed;--muted:#b3c3b8;--border:#3c5548;--accent:#cee4ae;--accent-text:#163426;--soft:#294535;--danger:#ffaca1;--danger-soft:#452e29;--highlight:#3a5030;--focus:#d7e9b8;--shadow:0 18px 60px #0003}
:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--focus);outline-offset:3px}
:where(button,input,select,textarea){font-family:var(--font-body)}
:where(.notice,.panel,.card,.screen-card){overflow-wrap:anywhere}
.table-wrap:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
:root{--control-border:#7b8a7e}:root[data-theme=dark]{--control-border:#82998b}
input:not([type=checkbox]):not([type=radio]),select,textarea,.button.secondary{border-color:var(--control-border)}
