/* ===== DTY floating widgets: accessibility menu + WhatsApp ===== */

/* floating action buttons */
#dtyWidgets .dtyw-fab{position:fixed;z-index:2147483600;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;cursor:pointer;border:none;box-shadow:0 10px 26px -8px rgba(10,20,40,.5);transition:transform .2s ease,box-shadow .2s ease}
#dtyWidgets .dtyw-fab:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 16px 32px -10px rgba(10,20,40,.55)}
#dtyWidgets .dtyw-fab:focus-visible{outline:3px solid #fff;outline-offset:3px}
#dtyWidgets .dtyw-fab svg{width:30px;height:30px;display:block}
.dtyw-fab-wa{right:20px;bottom:20px;background:#25d366;color:#fff}
.dtyw-fab-a11y{background:#4f46e5;color:#fff}
.dtyw-fab-a11y.pos-right{right:20px;bottom:88px;left:auto}
.dtyw-fab-a11y.pos-left{left:20px;bottom:20px;right:auto}
.dtyw-fab-a11y.pos-hide{display:none}

/* panel */
#dtyA11yPanel{position:fixed;z-index:2147483601;width:368px;max-width:calc(100vw - 32px);max-height:86vh;overflow-y:auto;background:#fff;border-radius:16px;box-shadow:0 28px 80px -22px rgba(10,20,40,.6);opacity:0;visibility:hidden;transform:translateY(16px) scale(.98);transition:opacity .22s ease,transform .22s ease,visibility .22s ease;font-family:"Assistant",system-ui,sans-serif;color:#1a2336}
#dtyA11yPanel.open{opacity:1;visibility:visible;transform:none}
#dtyA11yPanel.pos-right{right:20px;bottom:88px;left:auto}
#dtyA11yPanel.pos-left{left:20px;bottom:88px;right:auto}
@media(max-width:460px){#dtyA11yPanel{right:16px!important;left:16px!important;width:auto;bottom:84px}}

#dtyA11yPanel .dtyw-head{background:#4f46e5;color:#fff;padding:18px 20px;border-radius:16px 16px 0 0;display:flex;align-items:center;justify-content:space-between;gap:12px}
#dtyA11yPanel .dtyw-head h2{margin:0;font-size:20px;font-weight:800;line-height:1.2}
#dtyA11yPanel .dtyw-head p{margin:3px 0 0;font-size:12.5px;color:#cdd0f7}
#dtyA11yPanel .dtyw-close{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.18);border:none;color:#fff;cursor:pointer;display:grid;place-items:center;flex:0 0 auto}
#dtyA11yPanel .dtyw-close:hover{background:rgba(255,255,255,.32)}
#dtyA11yPanel .dtyw-close svg{width:16px;height:16px}

#dtyA11yPanel .dtyw-body{padding:16px}
#dtyA11yPanel .dtyw-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#dtyA11yPanel .dtyw-item{background:#eef1f6;border:2px solid transparent;border-radius:12px;padding:16px 8px;text-align:center;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease;display:flex;flex-direction:column;align-items:center;gap:8px;font-family:inherit;color:#1a2336}
#dtyA11yPanel .dtyw-item:hover{background:#e3e7f0}
#dtyA11yPanel .dtyw-item:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}
#dtyA11yPanel .dtyw-item .ic{height:26px;display:grid;place-items:center;color:#2a3550}
#dtyA11yPanel .dtyw-item .ic svg{width:24px;height:24px;display:block}
#dtyA11yPanel .dtyw-item .ic .txt{font-weight:800;font-size:18px;line-height:1}
#dtyA11yPanel .dtyw-item .ic .txt small{font-size:12px}
#dtyA11yPanel .dtyw-item .lbl{font-size:13px;font-weight:600;line-height:1.3}
#dtyA11yPanel .dtyw-item.active{background:#e7ecff;border-color:#4f46e5;color:#4f46e5}
#dtyA11yPanel .dtyw-item.active .ic{color:#4f46e5}

#dtyA11yPanel .dtyw-reset{width:100%;margin-top:14px;background:#4f46e5;color:#fff;border:none;border-radius:12px;padding:14px;font-family:inherit;font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px}
#dtyA11yPanel .dtyw-reset:hover{background:#4338ca}
#dtyA11yPanel .dtyw-reset svg{width:17px;height:17px}

#dtyA11yPanel .dtyw-sep{height:1px;background:#e6e9f0;margin:16px 0}
#dtyA11yPanel .dtyw-poslabel{font-size:13px;color:#6b7280;margin-bottom:9px}
#dtyA11yPanel .dtyw-posrow{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
#dtyA11yPanel .dtyw-posbtn{background:#fff;border:1px solid #d6dbe6;border-radius:10px;padding:11px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;color:#1a2336}
#dtyA11yPanel .dtyw-posbtn:hover{border-color:#4f46e5}
#dtyA11yPanel .dtyw-posbtn.active{background:#4f46e5;border-color:#4f46e5;color:#fff}

#dtyA11yPanel .dtyw-foot{text-align:center;margin-top:16px;padding-top:14px;border-top:1px solid #e6e9f0}
#dtyA11yPanel .dtyw-foot a{font-size:14px;color:#4f46e5;text-decoration:underline;font-weight:600}

/* ===== accessibility transformations (applied to <html>) ===== */
/* scoped to content regions so the widget UI itself stays readable */
html.acc-contrast header, html.acc-contrast main, html.acc-contrast footer{filter:invert(1) hue-rotate(180deg)}
html.acc-contrast img, html.acc-contrast iframe{filter:invert(1) hue-rotate(180deg)}

html.acc-grayscale header, html.acc-grayscale main, html.acc-grayscale footer{filter:grayscale(1)}

html.acc-links a{text-decoration:underline!important;text-underline-offset:3px!important;outline:2px solid #f59f00;background:#fff8db!important;color:#0e1b2e!important;border-radius:3px}

html.acc-bigtext header,html.acc-bigtext main,html.acc-bigtext footer{zoom:1.15}
html.acc-hugetext header,html.acc-hugetext main,html.acc-hugetext footer{zoom:1.32}

html.acc-spacing p,html.acc-spacing li,html.acc-spacing a,html.acc-spacing span,html.acc-spacing h1,html.acc-spacing h2,html.acc-spacing h3,html.acc-spacing h4{letter-spacing:.1em!important;word-spacing:.16em!important}

html.acc-lineheight p,html.acc-lineheight li,html.acc-lineheight a,html.acc-lineheight span,html.acc-lineheight h1,html.acc-lineheight h2,html.acc-lineheight h3{line-height:2.1!important}

html.acc-noanim *,html.acc-noanim *::before,html.acc-noanim *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.acc-noanim .reveal{opacity:1!important;transform:none!important}

html.acc-noimg header img,html.acc-noimg main img,html.acc-noimg footer img,html.acc-noimg iframe{display:none!important}

html.acc-dyslexia header p,html.acc-dyslexia main p,html.acc-dyslexia footer p,html.acc-dyslexia li,html.acc-dyslexia main a,html.acc-dyslexia main span,html.acc-dyslexia h1,html.acc-dyslexia h2,html.acc-dyslexia h3,html.acc-dyslexia h4,html.acc-dyslexia label,html.acc-dyslexia input,html.acc-dyslexia textarea,html.acc-dyslexia button{font-family:"Assistant",Verdana,Arial,sans-serif!important;letter-spacing:.05em!important;word-spacing:.1em!important;font-weight:500!important}

html.acc-bigcursor,html.acc-bigcursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 24 24'%3E%3Cpath fill='%23111' stroke='%23fff' stroke-width='1.3' d='M5 2.5l14.5 7.2-6.2 2-2 6.3z'/%3E%3C/svg%3E") 4 4, auto!important}

html.acc-align main p,html.acc-align main li{text-align:justify!important}
