/* Jobistim Accessibility Widget */
#jba-root{ --jba-accent:#1769ff; --jba-fg:#0c0c0c; --jba-bg:#ffffff; --jba-line:#d8d8d8;
	position:fixed; bottom:20px; z-index:99990; font-family:system-ui,"Segoe UI",Arial,sans-serif; }
#jba-root.jba-pos-right{ right:20px; }
#jba-root.jba-pos-left{ left:20px; }

#jba-toggle{
	width:60px; height:60px; border-radius:50%; border:3px solid #fff;
	background:var(--jba-accent); color:#fff; cursor:pointer;
	box-shadow:0 4px 14px rgba(0,0,0,.28); display:flex; align-items:center; justify-content:center;
	transition:transform .15s ease;
}
#jba-toggle:hover{ transform:scale(1.06); }
#jba-toggle:focus-visible{ outline:3px solid #ffbf00; outline-offset:3px; }
#jba-toggle .jba-icon{ width:32px; height:32px; display:block;
	background:#fff;
	-webkit-mask:center/contain no-repeat var(--jba-mask); mask:center/contain no-repeat var(--jba-mask); }
#jba-root{ --jba-mask:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='3.8' r='2'/%3E%3Cpath d='M21 6.5c-2 .6-5.5 1-9 1s-7-.4-9-1L2.5 9c1.6.5 4 .8 6 .9l-.8 11h2.2l.7-6h.8l.7 6h2.2l-.8-11c2-.1 4.4-.4 6-.9z'/%3E%3C/svg%3E"); }

.jba-panel{
	position:absolute; bottom:74px; width:330px; max-width:92vw; max-height:78vh; overflow:auto;
	background:var(--jba-bg); color:var(--jba-fg); border:1px solid var(--jba-line);
	border-radius:14px; box-shadow:0 10px 40px rgba(0,0,0,.3); padding:0;
}
#jba-root.jba-pos-right .jba-panel{ right:0; }
#jba-root.jba-pos-left .jba-panel{ left:0; }
.jba-panel[hidden]{ display:none; }

.jba-panel-head{
	display:flex; align-items:center; justify-content:space-between;
	padding:14px 16px; background:var(--jba-accent); color:#fff; position:sticky; top:0;
}
.jba-panel-head h2{ margin:0; font-size:18px; color:#fff; }
#jba-close{ background:transparent; border:0; color:#fff; font-size:28px; line-height:1;
	cursor:pointer; width:36px; height:36px; border-radius:8px; }
#jba-close:hover{ background:rgba(255,255,255,.2); }
#jba-close:focus-visible{ outline:3px solid #ffbf00; outline-offset:2px; }

.jba-panel-body{ display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:14px; }
.jba-feat{
	display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center;
	padding:12px 8px; min-height:74px; border:1px solid var(--jba-line); border-radius:10px;
	background:#f7f8fa; color:#111; cursor:pointer; font-size:13px; font-weight:600;
}
.jba-feat:hover{ background:#eef1f6; }
.jba-feat:focus-visible{ outline:3px solid var(--jba-accent); outline-offset:2px; }
.jba-feat[aria-pressed="true"]{ background:var(--jba-accent); color:#fff; border-color:var(--jba-accent); }
.jba-feat .jba-feat-ico{ font-size:22px; line-height:1; }
.jba-feat .jba-level{ font-size:11px; opacity:.85; }

.jba-panel-foot{ display:flex; gap:10px; padding:12px 14px; border-top:1px solid var(--jba-line);
	flex-wrap:wrap; align-items:center; justify-content:space-between; }
.jba-reset{ background:#b3261e; color:#fff; border:0; padding:10px 14px; border-radius:8px;
	font-weight:700; cursor:pointer; }
.jba-reset:focus-visible{ outline:3px solid #ffbf00; outline-offset:2px; }
.jba-stmt-link{ color:#0b4dc4; font-weight:700; text-decoration:underline; }

html.jba-readable *{ font-family:Arial,"Helvetica Neue",sans-serif !important; }
html.jba-dyslexia *{ font-family:"Comic Sans MS","OpenDyslexic",Arial,sans-serif !important; letter-spacing:.04em; }

html.jba-links a{ text-decoration:underline !important; font-weight:700 !important;
	outline:1px dashed #0b4dc4; outline-offset:2px; }
html.jba-headings :is(h1,h2,h3,h4,h5,h6){ background:#fff4c2 !important; color:#000 !important;
	outline:2px solid #c9a200; outline-offset:1px; }

html.jba-contrast-high, html.jba-contrast-high *{ background:#000 !important; color:#fff !important; }
html.jba-contrast-high a, html.jba-contrast-high a *{ color:#ffea00 !important; }
html.jba-contrast-inv{ filter:invert(1) hue-rotate(180deg); }
html.jba-contrast-inv img, html.jba-contrast-inv video{ filter:invert(1) hue-rotate(180deg); }
html.jba-dark, html.jba-dark body{ background:#101418 !important; color:#e8e8e8 !important; }
html.jba-dark a{ color:#7fb4ff !important; }
html.jba-light, html.jba-light body{ background:#ffffff !important; color:#111 !important; }
html.jba-mono{ filter:grayscale(1); }

html.jba-stop-anim *,
html.jba-stop-anim *::before,
html.jba-stop-anim *::after{
	animation:none !important; transition:none !important; scroll-behavior:auto !important;
}

html.jba-cursor *{ cursor:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M6 2l30 18-13 3 8 16-5 2-8-16-12 9z' fill='black' stroke='white' stroke-width='2'/%3E%3C/svg%3E") 4 4, auto !important; }

html.jba-spacing-1 *{ line-height:1.6 !important; letter-spacing:.04em !important; word-spacing:.1em !important; }
html.jba-spacing-2 *{ line-height:2 !important; letter-spacing:.08em !important; word-spacing:.18em !important; }

#jba-guide{ position:fixed; left:0; right:0; height:14px; background:rgba(255,221,0,.45);
	border-top:2px solid #b58900; border-bottom:2px solid #b58900; pointer-events:none; z-index:99980; display:none; }
#jba-mask-top,#jba-mask-bottom{ position:fixed; left:0; right:0; background:rgba(0,0,0,.6);
	pointer-events:none; z-index:99979; display:none; }

@media (max-width:480px){ .jba-panel{ width:94vw; } }
@media (prefers-reduced-motion:reduce){ #jba-toggle{ transition:none; } }
