/* ForcePhish accessibility menu and its modes. Self-contained on purpose: the
   legal pages load it without the landing page's styles. */
.a11y-root{position:fixed;z-index:10000;left:calc(16px + env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));
  font:400 14px/1.4 Geist,"IBM Plex Sans Hebrew",system-ui,sans-serif;color:#F2F3F5}
.a11y-root[dir="rtl"]{font-family:"IBM Plex Sans Hebrew",Geist,system-ui,sans-serif}
.a11y-btn{width:52px;height:52px;border:0;border-radius:50%;cursor:pointer;display:grid;place-items:center;padding:0;
  background:#7B91FF;color:#0B0C0F;box-shadow:0 10px 30px rgba(0,0,0,.45),0 0 0 3px rgba(11,12,15,.85);transition:transform .2s,background .2s}
.a11y-btn:hover{transform:scale(1.06);background:#9BACFF}
.a11y-btn.on{box-shadow:0 10px 30px rgba(0,0,0,.45),0 0 0 3px rgba(11,12,15,.85),0 0 0 6px #2CC6E4}
.a11y-btn svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.a11y-btn svg circle{fill:currentColor;stroke:none}
.a11y-btn:focus-visible,.a11y-panel button:focus-visible,.a11y-panel a:focus-visible{outline:3px solid #FFE14D;outline-offset:2px}
.a11y-panel{position:absolute;left:0;bottom:64px;width:288px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:14px;border-radius:16px;
  background:#1A2233;box-shadow:0 0 0 1px rgba(255,255,255,.1),0 30px 80px rgba(0,0,0,.6)}
.a11y-panel[hidden]{display:none}
.a11y-root[dir="rtl"] .a11y-panel{left:0;right:auto}
.a11y-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 4px 10px}
.a11y-head b{font-weight:600;font-size:16px}
.a11y-x{width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:#B1B6C0;cursor:pointer;display:grid;place-items:center}
.a11y-x:hover{background:rgba(255,255,255,.08);color:#fff}
.a11y-x svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.a11y-group{display:flex;flex-direction:column;gap:2px;padding:8px 0;border-top:1px solid rgba(255,255,255,.1)}
.a11y-group button{display:flex;align-items:center;gap:12px;width:100%;min-height:42px;padding:8px 10px;border:0;border-radius:10px;background:transparent;
  color:#F2F3F5;font:inherit;font-size:15px;text-align:start;cursor:pointer}
.a11y-group button:hover{background:rgba(255,255,255,.07)}
.a11y-group button[disabled]{opacity:.45;cursor:default}
.a11y-group button[disabled]:hover{background:transparent}
.a11y-group svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.a11y-group span{flex:1}
.a11y-lv{font:500 12px ui-monospace,"Geist Mono",monospace;font-style:normal;color:#8E949F}
.a11y-sw{position:relative;width:34px;height:20px;flex:none;border-radius:999px;background:#3A4252;transition:background .2s}
.a11y-sw::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:14px;height:14px;border-radius:50%;background:#C9CED6;transition:inset-inline-start .2s,background .2s}
.a11y-group button[aria-pressed="true"] .a11y-sw{background:#7B91FF}
.a11y-group button[aria-pressed="true"] .a11y-sw::after{inset-inline-start:17px;background:#fff}
.a11y-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 4px 2px;border-top:1px solid rgba(255,255,255,.1)}
.a11y-foot button{border:0;background:none;padding:6px 0;color:#B1B6C0;font:inherit;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.a11y-foot a{color:#9BACFF;font-size:13px;text-underline-offset:3px}
@media (max-width:560px){.a11y-btn{width:46px;height:46px}.a11y-btn svg{width:24px;height:24px}.a11y-panel{bottom:58px}}
@media print{.a11y-root{display:none}}

/* ---- high contrast ---- */
html.a11y-contrast.a11y-contrast{--ink:#FFFFFF;--muted:#F2F3F5;--subtle:#E3E6EA;--line:#A7ADB7;--peri:#FFE14D;--primary:#FFE14D;--primary-hover:#FFEA80;--on-primary:#000;--cyan:#7FE9FF}
html.a11y-contrast body{background:#000!important;color:#fff!important}
html.a11y-contrast .dim{color:inherit!important;opacity:1!important}
html.a11y-contrast a:not(.fp-btn){text-decoration:underline!important;text-underline-offset:3px}
html.a11y-contrast .fp-btn.primary,html.a11y-contrast .dm-submit{background:#FFE14D!important;color:#000!important}
html.a11y-contrast .fp-btn.secondary{box-shadow:inset 0 0 0 2px #fff!important;color:#fff!important}
html.a11y-contrast .ppl-shade,html.a11y-contrast .sx-shade,html.a11y-contrast .mv-shade,html.a11y-contrast .mv-scrim{background:rgba(0,0,0,.74)!important;opacity:1}
html.a11y-contrast input,html.a11y-contrast select,html.a11y-contrast textarea{border-color:#fff!important;background:#000!important;color:#fff!important}
html.a11y-contrast .a11y-panel{background:#000;box-shadow:0 0 0 2px #fff}
html.a11y-contrast .a11y-btn{background:#FFE14D}

/* ---- large cursor ---- */
html.a11y-cursor,html.a11y-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M8 4 38 22l-13.5 3.2L18.5 39z' fill='%23000' stroke='%23fff' stroke-width='3' stroke-linejoin='round'/%3E%3C/svg%3E") 8 4,auto!important}
html.a11y-cursor a,html.a11y-cursor a *,html.a11y-cursor button,html.a11y-cursor button *,html.a11y-cursor label,html.a11y-cursor select,html.a11y-cursor summary,html.a11y-cursor [role="button"],html.a11y-cursor [role="option"]{
  cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M8 4 38 22l-13.5 3.2L18.5 39z' fill='%23FFE14D' stroke='%23000' stroke-width='3' stroke-linejoin='round'/%3E%3C/svg%3E") 8 4,pointer!important}
html.a11y-cursor input[type="text"],html.a11y-cursor input[type="email"],html.a11y-cursor input[type="tel"],html.a11y-cursor input:not([type]),html.a11y-cursor textarea{cursor:text!important}

/* ---- keyboard navigation ---- */
html.a11y-kbd :focus{outline:3px solid #FFE14D!important;outline-offset:3px!important;box-shadow:0 0 0 7px rgba(0,0,0,.85)!important}
html.a11y-kbd .fp-skip{top:calc(76px + env(safe-area-inset-top,0px))!important;outline:2px solid #FFE14D}
html.a11y-kbd a:not(.fp-btn){text-decoration:underline;text-underline-offset:3px}
