/* Vida Protegida | optional accessibility preferences, not a compliance overlay.
   Every widget control is scoped to avoid inheriting homepage/global button rules. */
.vpa-launcher,.vpa-panel,.vpa-reading-guide,.vpa-reading-mask{box-sizing:border-box}
.vpa-launcher *, .vpa-panel *, .vpa-panel *::before, .vpa-panel *::after{box-sizing:border-box}

/* A true circle at EVERY width: explicit equal dimensions + neutralize global min-height,
   padding, gradients and filters. Desktop: anchored to the document footer. */
button.vpa-launcher{
  -webkit-appearance:none;appearance:none;position:absolute;
  inset:auto max(18px,env(safe-area-inset-right)) 16px auto;
  z-index:2300;display:grid;place-items:center;flex:none;
  width:46px!important;min-width:46px!important;max-width:46px!important;
  height:46px!important;min-height:46px!important;max-height:46px!important;
  aspect-ratio:1/1;overflow:hidden;box-sizing:border-box;
  margin:0!important;padding:0!important;border:2px solid #fff!important;
  border-radius:50%!important;background:#6044b0!important;background-image:none!important;
  color:#fff!important;line-height:1!important;letter-spacing:0!important;
  font:inherit;font-size:16px!important;box-shadow:0 3px 14px rgba(34,21,74,.34)!important;
  cursor:pointer;filter:none!important;transform:none!important;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
  transition:background-color .15s ease,box-shadow .15s ease;
}
button.vpa-launcher:hover{background:#48318d!important;box-shadow:0 5px 18px rgba(34,21,74,.42)!important}
button.vpa-launcher:focus-visible{outline:3px solid #ffe187!important;outline-offset:3px}
button.vpa-launcher svg{display:block;flex:none;width:25px!important;height:25px!important;
  min-width:25px;min-height:25px;fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
@media(max-width:767px){
  button.vpa-launcher{position:fixed;inset:auto max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) auto;
    z-index:2300;width:44px!important;min-width:44px!important;max-width:44px!important;
    height:44px!important;min-height:44px!important;max-height:44px!important}
  button.vpa-launcher svg{width:24px!important;height:24px!important;min-width:24px;min-height:24px}
}
/* Position relative for a footer-anchored launcher without changing page visuals. */
body:has(> .vpa-launcher){position:relative}

.vpa-panel{
  --vpa-bg:#fff;--vpa-surface:#f7f4fd;--vpa-card:#fff;--vpa-ink:#281b43;
  --vpa-muted:#59496f;--vpa-border:#d5c9e8;--vpa-accent:#54369e;
  --vpa-selected:#50318e;--vpa-selected-ink:#fff;--vpa-focus:#b074ff;
  position:fixed;inset:auto 18px 18px auto;
  box-sizing:border-box;margin:0;padding:0;max-width:none;
  width:min(420px,calc(100vw - 36px));
  max-height:min(88dvh,780px);overflow:hidden;
  border:1px solid var(--vpa-border);border-radius:18px;
  background:var(--vpa-bg);color:var(--vpa-ink);
  box-shadow:0 20px 70px rgba(21,10,47,.37);
  font:400 14px/1.5 system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  color-scheme:light;letter-spacing:normal;text-align:left;
}
.vpa-panel:not([open]){display:none}
.vpa-panel::backdrop{background:rgba(18,12,34,.60);backdrop-filter:blur(2px)}
.vpa-panel .vpa-shell{display:flex;flex-direction:column;max-height:min(88dvh,780px);min-height:0}
.vpa-panel .vpa-head{display:flex;align-items:center;justify-content:space-between;gap:12px;
  flex:0 0 auto;padding:17px 17px 14px;background:var(--vpa-surface);border-bottom:1px solid var(--vpa-border)}
.vpa-panel .vpa-head > div{flex:1;min-width:0}
.vpa-panel h2{font:750 20px/1.22 Georgia,'Times New Roman',serif;color:var(--vpa-ink);margin:0 0 4px}
.vpa-panel .vpa-intro{font-size:12px;line-height:1.4;color:var(--vpa-muted);margin:0}

/* The homepage uses `button { width:100%; padding:14px 18px;
   min-height:53px; background:gradient !important; color:white !important }`.
   Explicitly reverse ALL of those rules inside the widget. */
.vpa-panel button{
  -webkit-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;
  box-sizing:border-box;min-width:0;width:auto;min-height:44px;height:auto;
  padding:10px 11px;margin:0;border:1px solid var(--vpa-border);
  border-radius:10px;background:var(--vpa-card)!important;background-image:none!important;
  color:var(--vpa-ink)!important;box-shadow:none!important;text-shadow:none!important;
  transform:none!important;filter:none!important;letter-spacing:normal!important;text-transform:none!important;
  font:600 12.5px/1.35 system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  cursor:pointer;white-space:normal;text-align:center;overflow-wrap:break-word;
  transition:background-color .12s ease,border-color .12s ease;
}
.vpa-panel button:hover:not(:disabled){background:var(--vpa-surface)!important;border-color:var(--vpa-accent)}
.vpa-panel button:focus-visible,.vpa-panel summary:focus-visible,.vpa-panel a:focus-visible{
  outline:3px solid var(--vpa-focus)!important;outline-offset:2px}
.vpa-panel button:disabled{opacity:.48;cursor:not-allowed}
.vpa-panel button[aria-pressed="true"]{
  background:var(--vpa-selected)!important;color:var(--vpa-selected-ink)!important;
  border-color:var(--vpa-selected)!important}
.vpa-panel button[aria-pressed="true"]:hover{filter:none!important;background:var(--vpa-selected)!important}

.vpa-panel button.vpa-close{
  display:grid;place-items:center;flex:0 0 42px;
  width:42px!important;min-width:42px!important;max-width:42px!important;
  height:42px!important;min-height:42px!important;max-height:42px!important;
  padding:0!important;border-radius:11px;line-height:1!important}
.vpa-panel .vpa-close svg{display:block;width:18px;height:18px;stroke:currentColor;
  stroke-width:2.2;stroke-linecap:round;fill:none;pointer-events:none}
.vpa-panel .vpa-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;
  overscroll-behavior:contain;padding:13px 15px 10px;
  scrollbar-width:thin;scrollbar-color:#9884b8 transparent}
.vpa-panel .vpa-scroll::-webkit-scrollbar{width:6px}
.vpa-panel .vpa-scroll::-webkit-scrollbar-track{background:transparent}
.vpa-panel .vpa-scroll::-webkit-scrollbar-thumb{background:#9884b8;border-radius:20px}
.vpa-panel .vpa-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 12px}
.vpa-panel .vpa-presets button{width:100%;min-height:48px;padding:8px 5px;font-size:12px}
.vpa-panel details{min-width:0;border:1px solid var(--vpa-border);border-radius:12px;margin:0 0 9px;overflow:hidden;background:var(--vpa-card)}
.vpa-panel details[open]{border-color:var(--vpa-border)}
.vpa-panel summary{min-height:46px;display:flex;align-items:center;gap:9px;
  cursor:pointer;list-style:none;padding:12px 13px;font-size:13px;font-weight:750;
  line-height:1.35;color:var(--vpa-ink);background:var(--vpa-surface)}
.vpa-panel summary::-webkit-details-marker{display:none}
.vpa-panel summary::before{content:'';width:7px;height:7px;flex:0 0 7px;border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .12s ease}
.vpa-panel details[open] summary::before{transform:rotate(45deg)}
.vpa-panel details[open] summary{border-bottom:1px solid var(--vpa-border)}
.vpa-panel .vpa-section{padding:12px}
.vpa-panel .vpa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.vpa-panel .vpa-grid button{width:100%;min-height:44px}
.vpa-panel .vpa-row{display:flex;gap:10px;align-items:center;margin:8px 0 13px}
.vpa-panel .vpa-row .vpa-button{flex:1;min-width:0}
.vpa-panel .vpa-value{font-weight:800;text-align:center;min-width:60px;font-variant-numeric:tabular-nums}
.vpa-panel .vpa-tip{color:var(--vpa-muted);font-size:12px;line-height:1.48;margin:8px 0 6px}
.vpa-panel .vpa-foot{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;gap:11px;
  padding:11px 15px 12px;background:var(--vpa-surface);border-top:1px solid var(--vpa-border)}
.vpa-panel .vpa-foot button{flex:0 0 auto;min-height:44px;padding:10px 13px;font-size:12px}
.vpa-panel .vpa-foot span{max-width:165px;color:var(--vpa-muted);font-size:11px;line-height:1.3}
.vpa-panel .vpa-status{min-height:1.2em;margin:8px 0 2px;color:var(--vpa-accent);font-size:12px;font-weight:600}

@media(max-width:500px){
  .vpa-panel{inset:auto 10px max(10px,env(safe-area-inset-bottom)) 10px;
    width:calc(100vw - 20px);max-height:calc(100dvh - max(20px,env(safe-area-inset-top)) - max(12px,env(safe-area-inset-bottom)));border-radius:18px}
  .vpa-panel .vpa-shell{max-height:calc(100dvh - max(20px,env(safe-area-inset-top)) - max(12px,env(safe-area-inset-bottom)))}
  .vpa-panel .vpa-head{padding:14px 14px 12px}
  .vpa-panel .vpa-scroll{padding:12px 12px 9px}
  .vpa-panel .vpa-foot{padding:10px 12px 11px}
}
@media(max-width:340px){
  .vpa-panel .vpa-presets{gap:5px}
  .vpa-panel .vpa-presets button{font-size:11px;padding:7px 3px}
  .vpa-panel .vpa-foot span{font-size:10px;max-width:122px}
}
@media(prefers-reduced-motion:reduce){
  .vpa-launcher,.vpa-panel button,.vpa-panel summary::before{transition:none!important}
  .vpa-panel::backdrop{backdrop-filter:none}
}

/* Dark mode follows the site's existing theme, not a separate competing toggle. */
html[data-theme="dark"] .vpa-panel{
  --vpa-bg:#211a30;--vpa-surface:#30243f;--vpa-card:#2b203c;
  --vpa-ink:#f8f4ff;--vpa-muted:#dccdec;--vpa-border:#705b91;
  --vpa-accent:#c9b3ff;--vpa-selected:#c0aaf3;--vpa-selected-ink:#24143e;--vpa-focus:#ffe187;
  color-scheme:dark}
html[data-theme="dark"] .vpa-panel .vpa-scroll{scrollbar-color:#8f79af transparent}
html[data-theme="dark"] .vpa-panel .vpa-scroll::-webkit-scrollbar-thumb{background:#8f79af}

/* Optional user enhancements apply to site content only, NEVER to the menu or launcher. */
html[data-vpa-font="readable"] body > :not(.vpa-panel):not(.vpa-launcher) :is(h1,h2,h3,h4,h5,h6,p,li,blockquote,label,summary,input,select,textarea,button,small,dt,dd,th,td){font-family:Verdana,Arial,Helvetica,sans-serif!important}
html[data-vpa-font="dyslexia"] body > :not(.vpa-panel):not(.vpa-launcher) :is(h1,h2,h3,h4,h5,h6,p,li,blockquote,label,summary,input,select,textarea,button,small,dt,dd,th,td){font-family:Verdana,Tahoma,Arial,sans-serif!important}
html[data-vpa-spacing="true"] body > :not(.vpa-panel):not(.vpa-launcher) :is(p,li,label,blockquote,summary){letter-spacing:.07em!important;word-spacing:.16em!important;line-height:1.85!important}
html[data-vpa-bold="true"] body > :not(.vpa-panel):not(.vpa-launcher) :is(p,li,label,small,summary){font-weight:650!important}
html[data-vpa-links="true"] body > :not(.vpa-panel):not(.vpa-launcher) a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:3px!important;outline-offset:2px!important}
html[data-vpa-headings="true"] body > :not(.vpa-panel):not(.vpa-launcher) :is(h1,h2,h3,h4,h5,h6){outline:2px solid #9467de!important;outline-offset:3px!important}
html[data-vpa-focus="true"] body > :not(.vpa-panel):not(.vpa-launcher) :focus-visible{outline:4px solid #edab15!important;outline-offset:4px!important}
html[data-vpa-targets="true"] body > :not(.vpa-panel):not(.vpa-launcher) :is(a,button,input,select,textarea){min-height:44px!important;touch-action:manipulation}
html[data-vpa-motion="true"] body > :not(.vpa-panel):not(.vpa-launcher),
html[data-vpa-motion="true"] body > :not(.vpa-panel):not(.vpa-launcher) *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
html[data-vpa-images="true"] body > :not(.vpa-panel):not(.vpa-launcher) :is(video,canvas){visibility:hidden!important}
/* Filters are rendered on a separate, pointer-transparent layer. Never apply
   `filter` or `transform` to .page, body or html: that changes fixed-background
   containing blocks and makes the mountain artwork appear cut off. */
.vpa-color-filter{
  box-sizing:border-box;position:fixed;inset:0;z-index:1850;
  pointer-events:none;display:none;
  -webkit-backdrop-filter:var(--vpa-effect);
  backdrop-filter:var(--vpa-effect);
}
html[data-vpa-colors="mono"] .vpa-color-filter{display:block;--vpa-effect:grayscale(1)}
html[data-vpa-colors="invert"] .vpa-color-filter{display:block;--vpa-effect:invert(1) hue-rotate(180deg)}
html[data-vpa-colors="high"] .vpa-color-filter{display:block;--vpa-effect:contrast(1.5)}
html[data-vpa-colors="low"] .vpa-color-filter{display:block;--vpa-effect:contrast(.8) saturate(.65)}
/* Hide all visual imagery deliberately and consistently instead of hiding
   arbitrary portions of the background. Preserve layout/alt descriptions. */
html[data-vpa-images="true"] .page{background-image:none!important}
html[data-theme="dark"][data-vpa-images="true"] .page{background-color:#241c37!important}
html[data-vpa-images="true"] body > :not(.vpa-panel):not(.vpa-launcher) img{visibility:hidden!important}
html[data-vpa-cursor="true"] body > :not(.vpa-panel):not(.vpa-launcher),html[data-vpa-cursor="true"] body > :not(.vpa-panel):not(.vpa-launcher) :not(a):not(button):not(input):not(select):not(textarea):not(label){cursor:crosshair!important}
.vpa-reading-guide{pointer-events:none;position:fixed;left:0;right:0;top:calc(var(--vpa-pointer-y,50vh) - 2px);height:4px;background:rgba(251,186,53,.9);z-index:2000;box-shadow:0 0 0 1px #24164f;display:none}
.vpa-reading-guide[data-on="true"]{display:block}
.vpa-reading-mask{pointer-events:none;position:fixed;inset:0;z-index:1900;display:none}
.vpa-reading-mask[data-on="true"]{display:block}
.vpa-reading-mask::before,.vpa-reading-mask::after{content:"";position:absolute;left:0;right:0;background:rgba(17,12,37,.65)}
.vpa-reading-mask::before{top:0;height:calc(var(--vpa-pointer-y,50vh) - 34px)}
.vpa-reading-mask::after{bottom:0;top:calc(var(--vpa-pointer-y,50vh) + 34px)}
html[data-vpa-enlarged="true"] body > :not(.vpa-panel):not(.vpa-launcher) :is(h1,h2,h3,h4,h5,h6,a,p,blockquote){overflow-wrap:anywhere}
html[data-vpa-enlarged="true"] .legal-site-links{flex-wrap:wrap!important}
@media(print){.vpa-launcher,.vpa-panel,.vpa-reading-guide,.vpa-reading-mask,.vpa-color-filter{display:none!important}}
