/* Shared keyboard, contrast, reflow, and motion safeguards (WCAG 2.2 AA target). */
:root{--office-muted:#52616c;--bs-secondary-color:#58616b}
.skip-link{position:fixed;left:1rem;top:1rem;z-index:20000;padding:.75rem 1rem;background:#fff;color:#111;border:3px solid #111;border-radius:.3rem;transform:translateY(-200%)}
.skip-link:focus{transform:none}
:focus-visible{outline:3px solid #111!important;outline-offset:3px;box-shadow:0 0 0 6px #fff!important}
html{scroll-padding-block:1rem} [id]{scroll-margin-block:1rem}
#main-content:focus:not(:focus-visible){outline:none}
body{overflow-wrap:break-word}
img,video,iframe{max-width:100%}
button,.btn,[role="button"]{min-width:24px;min-height:32px}
input[type="checkbox"],input[type="radio"]{min-width:24px;min-height:24px;border-color:#767676}
.form-control,.form-select,.input-group-text{border-color:#767676}
.form-control::placeholder{color:#616971;opacity:1}
.text-muted,.text-secondary,.text-muted-sm{color:#58616b!important}
a:not(.btn):not(.nav-link):not(.navbar-brand):not(.dropdown-item):not(.page-link){color:var(--brand-link)}
p a,li a:not(.nav-link):not(.dropdown-item),.review-file{text-decoration:underline;text-underline-offset:.15em}
.demo-primary,.btn-primary{background-color:var(--brand);color:var(--brand-ink);border-color:var(--brand-link)}
.demo-primary:hover,.btn-primary:hover,.demo-primary:focus,.btn-primary:focus{color:var(--brand-ink);background-color:var(--brand)}
.btn-outline-primary{color:var(--brand-link);border-color:var(--brand-link)}
.btn-outline-primary:hover,.btn-outline-primary:active{color:var(--brand-ink);background-color:var(--brand)}
.office-client-action,.office-stat.selected,.stepper-step.active{color:var(--brand-link)}
.office-progress-label,.answer-card dt,.review-file small,.intake-form-body p{color:var(--office-muted)}
.demo-toolbar button,.demo-toolbar a,.demo-toolbar span{opacity:1}
.client-nav-action,.client-nav-email{opacity:1}
.toast-msg.ok{color:var(--success-ink)}.toast-msg.err{color:var(--danger-ink)}
[data-ie-field]{cursor:pointer}
[data-ie-field][role="button"]{display:inline-block;min-width:24px;min-height:24px;border-radius:3px}
.drop-zone input[type="file"]{display:block!important;width:100%;max-width:100%;margin-top:.75rem;color:#333;background:#fff}
.drop-zone:focus-within{outline:3px solid #111;outline-offset:3px}
label.btn input[type="file"],input[type="file"].d-none{display:inline-block!important;position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
label.btn:focus-within{outline:3px solid #111;outline-offset:3px}
.modal-title{line-height:1.4}.modal-body{overflow-wrap:anywhere}
.table-responsive:focus-visible{outline-offset:-3px}
.chart-description{font-size:.9rem;color:#343a40}
@media(max-width:640px){button,.btn,[role="button"],.nav-link,.dropdown-item{min-height:44px} .btn-close{min-width:44px} .d-flex{min-width:0} .navbar-brand{overflow-wrap:anywhere} .container,.container-fluid{max-width:100%} input,select,textarea{max-width:100%} .table{width:100%} .table-responsive{overflow-x:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){:focus-visible{outline:3px solid Highlight!important;box-shadow:none!important}button,.btn,input,select,textarea{border:1px solid ButtonText}}

.inline-edit-control{display:inline-block;max-width:100%;min-width:24px;min-height:24px;cursor:pointer;border:1px dashed transparent;padding:2px;border-radius:3px;vertical-align:baseline}
.inline-edit-control:hover{border-color:currentColor}
.inline-edit-control input,.inline-edit-control textarea,.inline-edit-control select{font:inherit;max-width:100%}
.text-primary{color:var(--brand-link)!important}.text-success{color:#146c43!important}.text-danger{color:#b02a37!important}.text-warning{color:#765600!important}.text-info{color:#075a6b!important}
.badge.bg-info,.badge.bg-warning,.badge.bg-light{color:#111!important}
.stepper-step.active .stepper-circle{color:var(--brand-ink)}
.progress-ring .fg,.progress-ring__fill{stroke:var(--brand-link)}
.office-client progress::-webkit-progress-value{background:var(--brand-link)}
.office-client progress::-moz-progress-bar{background:var(--brand-link)}
