:root { --bs-primary: var(--vision-primary, #312360); --bs-primary-rgb: 49,35,96; }
body { background: #f5f7fa; color: #223342; }
.navbar-brand { color: var(--vision-primary, #312360); }
.card { border-color: #dce3ea; border-radius: .75rem; }
.btn-outline-primary { --bs-btn-color:var(--vision-primary, #312360); --bs-btn-border-color:var(--vision-primary, #312360); --bs-btn-hover-bg:var(--vision-primary, #312360); --bs-btn-hover-border-color:var(--vision-primary, #312360); }
a:focus-visible, button:focus-visible { outline: 3px solid var(--vision-highlight, #FDCE04); outline-offset: 3px; }
:root { --bs-link-color:var(--vision-primary, #312360); --bs-link-hover-color:var(--vision-burgundy, #871538); }
.btn-primary { --bs-btn-bg:var(--vision-primary, #312360); --bs-btn-border-color:var(--vision-primary, #312360); --bs-btn-hover-bg:var(--vision-burgundy, #871538); --bs-btn-hover-border-color:var(--vision-burgundy, #871538); --bs-btn-active-bg:var(--vision-burgundy, #871538); }
.text-bg-primary { background-color:var(--vision-primary, #312360)!important; }
.navbar { border-bottom:3px solid var(--vision-accent, #65CCEB); }
input:focus-visible, select:focus-visible, textarea:focus-visible { outline:3px solid var(--vision-highlight, #FDCE04); outline-offset:2px; }
dl dd, td { overflow-wrap:anywhere; }