
:root{
 --wcag-radius:18px;
 --wcag-shadow:0 12px 40px rgba(0,0,0,.18);
 --wcag-border:#e7e7e7;
}
.wcag-a11y-toggle{
 position:fixed;right:22px;bottom:22px;z-index:999999;
 width:62px;height:62px;border:none;border-radius:50%;
 background:#D4353B;color:#fff;cursor:pointer;font-weight:700;
 box-shadow:var(--wcag-shadow);font-size:16px;
 display:flex;align-items:center;justify-content:center; 
}
.wcag-a11y-icon{width:36px;height:36px;display:block;fill:#fff;display:block;overflow:visible;}
.wcag-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wcag-a11y-panel{
 position:fixed;right:22px;bottom:95px;width:320px;
 background:#fff;border-radius:24px;
 border:1px solid var(--wcag-border);
 box-shadow:var(--wcag-shadow);
 z-index:999999;overflow:hidden;
 transform:translateY(20px);opacity:0;pointer-events:none;
 transition:all .25s ease;
 font-family:Arial,sans-serif;
}
.wcag-a11y-panel.open{
 opacity:1;transform:translateY(0);pointer-events:auto;
}
.wcag-a11y-head{
 padding:18px 20px;background:#D4353B;color:#fff;
}
.wcag-a11y-head h3{margin:0;font-size:18px;color:#fff !important}
.wcag-a11y-head p{margin:6px 0 0;font-size:13px;opacity:.8}
.wcag-a11y-body{
 padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px;
}
.wcag-btn{
 border:1px solid var(--wcag-border);
 border-radius:16px;padding:14px 12px;
 background:#fff;cursor:pointer;
 font-size:14px;font-weight:600;
 transition:transform .2s ease, box-shadow .2s ease;
 color: #3a3a3a;
}
.wcag-btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.08)}
.wcag-btn:hover, .wcag-btn:focus,.wcag-a11y-toggle:hover,.wcag-a11y-toggle:focus{
 background-color: #D4353B !important;
 outline:3px solid #fff !important !important;
 outline-offset:3px !important;
}
.wcag-footer{
 padding:14px 18px;border-top:1px solid #efefef;
 font-size:12px;color:#666;
}
body.wcag-high-contrast,
body.wcag-high-contrast *{
 background:#000!important;color:#fff!important;border-color:#fff!important;mix-blend-mode:normal !important;
}
body.wcag-highlight-links a{
 text-decoration:underline!important;
 outline:2px dashed currentColor!important;
 outline-offset:2px!important;
}
body.wcag-focus a,
body.wcag-focus button,
body.wcag-focus input,
body.wcag-focus textarea,
body.wcag-focus select,
body.wcag-focus [tabindex]{
 transition:outline-color .15s ease, box-shadow .15s ease, background-color .15s ease!important;
}
body.wcag-focus a:focus,
body.wcag-focus button:focus,
body.wcag-focus input:focus,
body.wcag-focus textarea:focus,
body.wcag-focus select:focus,
body.wcag-focus [tabindex]:focus{
 outline:4px solid #0F3987!important;
 outline-offset:2px!important;
 box-shadow:0 0 0 7px rgba(0,0,0,.75)!important;
 background:#D4353B!important;
 color:#000!important;
}
body.wcag-focus a:hover,
body.wcag-focus button:hover{
 outline:2px solid #0F3987!important;
 outline-offset:2px!important;
}
@media(max-width:768px){
 .wcag-a11y-panel{width:calc(100vw - 32px);right:16px;bottom:88px}
 .wcag-a11y-toggle{right:16px;bottom:16px}
}