/* The active bunny widget. Logical properties only (RTL safe). */
.mw{position:fixed;inset-inline-end:16px;inset-block-end:16px;z-index:80;display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-inline-size:min(340px,calc(100vw - 32px));pointer-events:none}
.mw>*{pointer-events:auto}
.mw-bun{display:block;padding:0;border:0;background:transparent;cursor:pointer;min-inline-size:44px;min-block-size:44px;border-radius:24px}
.mw-bun img{display:block;inline-size:80px;block-size:auto;filter:drop-shadow(0 8px 14px rgba(74,56,32,.18)) brightness(var(--media-dim,1))}
.mw-bun:focus-visible{outline:3px solid var(--primary,#2457D6);outline-offset:3px}
.mw-bun:hover img{transform:translateY(-2px)}
.mw-bun img{transition:transform .2s var(--ease,ease)}
.mw-bubble{position:relative;background:var(--k-white,#fff);color:var(--ink,#2E2822);border:1px solid var(--k-line-sky,#D8E6F5);border-radius:20px;padding:14px 16px;box-shadow:0 14px 34px -12px rgba(36,87,214,.28),0 2px 8px rgba(74,56,32,.08);font-size:15px;line-height:1.45;inline-size:max-content;max-inline-size:100%}
.mw-bubble::after{content:"";position:absolute;inset-inline-end:34px;inset-block-end:-8px;inline-size:16px;block-size:16px;background:var(--k-white,#fff);border-inline-end:1px solid var(--k-line-sky,#D8E6F5);border-block-end:1px solid var(--k-line-sky,#D8E6F5);transform:rotate(45deg)}
.mw-bubble[hidden]{display:none}
.mw-in{animation:mw-pop .28s cubic-bezier(.2,.9,.3,1.2)}
@keyframes mw-pop{from{opacity:0;transform:translateY(8px) scale(.94)}to{opacity:1;transform:none}}
.mw-t{margin:0 0 10px}
.mw-hello{margin:0;font-family:var(--font-serif,serif);font-size:22px;font-weight:600;padding-inline-end:4px}
.mw-row{display:flex;gap:8px;flex-wrap:wrap}
.mw-btn{font:inherit;font-weight:600;font-size:15px;min-block-size:44px;padding:0 16px;border-radius:999px;border:1px solid transparent;cursor:pointer}
.mw-yes{background:var(--primary,#2457D6);color:#fff}
.mw-yes:hover{background:var(--primary-hover,#1E4BC2)}
.mw-no{background:var(--k-white,#fff);color:var(--ink-2,#4A4238);border-color:var(--border-strong,#D6C9B2)}
.mw-no:hover{background:var(--card-2,#FBF7EF)}
.mw-chips{display:flex;flex-wrap:wrap;gap:8px;max-inline-size:290px}
.mw-chip{font:inherit;font-size:15px;font-weight:600;min-block-size:44px;padding:0 16px;border-radius:999px;border:1px solid var(--border-strong,#D6C9B2);background:var(--k-white,#fff);color:var(--ink,#2E2822);cursor:pointer}
.mw-chip:hover{background:var(--sky,#EAF3FD);border-color:var(--k-line-sky,#B9D2F2)}
.mw-chip[aria-current="true"]{background:var(--sky,#EAF3FD);border-color:var(--primary,#2457D6);color:var(--primary-ink,#1F4FCC)}
.mw-btn:focus-visible,.mw-chip:focus-visible,.mw-x:focus-visible{outline:3px solid var(--primary,#2457D6);outline-offset:2px}
.mw-x{position:absolute;inset-block-start:6px;inset-inline-end:8px;border:0;background:transparent;font-size:24px;line-height:1;color:var(--muted,#6E6253);cursor:pointer;min-inline-size:44px;min-block-size:44px;border-radius:50%}
.mw-x:hover{background:var(--card-2,#FBF7EF)}
/* one bunny on the sign-in page: hide the static one in the media panel when the active bunny is on */
.mw-on .si-helper{display:none}
@media (max-width:520px){.mw-bun img{inline-size:48px}.mw{inset-inline-end:10px;inset-block-end:10px}}
/* phones: step aside while a field has focus, and sit above the Home sticky button */
.mw.mw-away{display:none}
body:has(.home-sticky:not([hidden])) .mw{inset-block-end:76px}
@media (prefers-reduced-motion:reduce){.mw-in{animation:none}.mw-bun img{transition:none}}

.mw-lift{inset-block-end:76px}

a.mw-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.mw-wave{transform-origin:50% 90%;animation:mw-wave 1.3s ease-in-out}
@keyframes mw-wave{0%,100%{transform:rotate(0)}15%{transform:rotate(-9deg)}35%{transform:rotate(8deg)}55%{transform:rotate(-8deg)}75%{transform:rotate(6deg)}}
@media (prefers-reduced-motion:reduce){.mw-wave{animation:none}}

/* ---------- Ask mode (script tag has data-ask). Logical properties only (RTL safe). ---------- */
.mw-ask-on{max-inline-size:min(380px,calc(100vw - 32px))}
.mw-bubble.mw-ask{inline-size:min(380px,calc(100vw - 32px));padding:12px 14px 14px}
.mw-ask-in{display:flex;flex-direction:column;gap:10px;max-block-size:calc(100vh - 230px)}
@supports (height:100dvh){.mw-ask-in{max-block-size:calc(100dvh - 230px)}}
.mw-head{display:flex;align-items:center;justify-content:space-between;gap:6px;flex:none}
.mw-tabs{display:flex;gap:6px;flex-wrap:wrap}
.mw-tab{font:inherit;font-size:15px;font-weight:600;min-block-size:44px;padding:0 14px;border-radius:999px;border:1px solid var(--border-strong,#D6C9B2);background:var(--k-white,#fff);color:var(--ink,#2E2822);cursor:pointer}
.mw-tab:hover{background:var(--sky,#EAF3FD)}
.mw-tab[aria-pressed="true"]{background:var(--sky,#EAF3FD);border-color:var(--primary,#2457D6);color:var(--primary-ink,#1F4FCC)}
.mw-tab:focus-visible,.mw-input:focus-visible,.mw-link:focus-visible,.mw-log:focus-visible{outline:3px solid var(--primary,#2457D6);outline-offset:2px}
.mw-x-in{position:static;flex:none}
.mw-body{display:flex;flex-direction:column;gap:10px;min-block-size:0;flex:1 1 auto}
.mw-log{flex:1 1 auto;min-block-size:96px;max-block-size:280px;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:8px;padding:2px}
.mw-msg{max-inline-size:94%}
.mw-msg p{margin:0;overflow-wrap:anywhere}
.mw-bot{align-self:flex-start;background:var(--k-sky,#F3F8FE);border:1px solid var(--k-line-sky,#DCE8F7);border-radius:16px;border-start-start-radius:6px;padding:10px 12px}
.mw-me{align-self:flex-end;background:var(--primary,#2457D6);color:#fff;border-radius:16px;border-end-end-radius:6px;padding:8px 12px}
.mw-intro{background:var(--k-card-2,#FBF7EF);border-color:var(--k-border,#EEE4D2)}
.mw-link{display:inline-block;margin-block-start:6px;font-weight:600;color:var(--primary-ink,#1F4FCC);text-decoration:underline}
.mw-follow{display:flex;flex-wrap:wrap;gap:6px;margin-block-start:8px}
/* an answer written by the free assistant: paragraphs, same-site page links, and a plain note that it is automated */
.mw-ai p+p{margin-block-start:6px}
.mw-ailinks{display:flex;flex-wrap:wrap;gap:0 16px;margin-block-start:2px}
.mw-ai-note{margin:8px 0 0;font-size:13px;line-height:1.4;color:var(--muted,#6E6253)}
.mw-form{display:flex;gap:8px;flex:none}
.mw-input{flex:1 1 auto;min-inline-size:0;min-block-size:44px;border:1px solid var(--border-strong,#D6C9B2);border-radius:999px;padding:0 16px;font:inherit;font-size:16px;color:var(--ink,#2E2822);background:var(--k-white,#fff)}
.mw-input::placeholder{color:var(--k-muted,#6E6253);opacity:1}
.mw-send{flex:none}
.mw-sug{display:flex;flex-wrap:wrap;gap:8px;flex:none}
.mw-sug[hidden]{display:none}
.mw-ask .mw-chip{padding:8px 14px;line-height:1.3;text-align:start;border-radius:18px;max-inline-size:100%}
.mw-ask .mw-chip-s{font-size:14px;min-block-size:40px;padding:6px 12px}
.mw-wa{flex:none;align-self:stretch}
.mw-wa.mw-no{color:var(--ink,#2E2822)}
.mw-sr{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-height:700px){.mw-sug .mw-chip:nth-child(n+4){display:none}}
@media (max-width:520px){.mw-ask-on{max-inline-size:calc(100vw - 20px)}.mw-bubble.mw-ask{inline-size:calc(100vw - 20px)}}
/* the retained pages (privacy, terms, samples, jobs) print too: never put the helper on paper (site.css does the same for the 13 new pages) */
@media print{.mw{display:none!important}}
/* phones: slide aside (a small tab stays in the page margin) while the helper would sit on a button or a field; see dodgeCheck() in mascot-widget.js */
.mw{transition:transform .2s ease}
/* QA 2026-10-10: the helper never leaves the screen. The old sideways slide put half of it off a 375px phone (and off the left edge in Arabic);
   now it stays fully inside the margin, only dims a little while it is over a button, and the page has room below so content scrolls above it. */
@media (max-width:760px){
  .mw.mw-dodge{transform:none;opacity:.88}
  .mw-bun{inline-size:44px;block-size:44px;min-inline-size:44px;min-block-size:44px;border-radius:50%;display:grid;place-items:center}
  .mw-bun img{inline-size:44px;block-size:44px;object-fit:contain}
  body:has(.mw){padding-block-end:calc(88px + env(safe-area-inset-bottom,0px))}
  .mw{inset-inline-end:var(--s-4,16px)}
  /* QA 2026-10-11: at rest the helper is a small, see-through button in the corner (the end of a card stays readable under it), solid again when touched or focused; the page keeps room below its last block */
  body:not(:has(.home-sticky:not([hidden]))) .mw:not(.mw-lift){inset-block-end:calc(10px + env(safe-area-inset-bottom,0px))}
  .mw:not(:has(.mw-bubble:not([hidden]))) .mw-bun{opacity:.62;transition:opacity .2s ease}
  .mw:not(:has(.mw-bubble:not([hidden]))) .mw-bun:hover,.mw:not(:has(.mw-bubble:not([hidden]))) .mw-bun:focus-visible,.mw:not(:has(.mw-bubble:not([hidden]))) .mw-bun:active{opacity:1}
  body:has(.mw) main{padding-block-end:var(--s-6,32px)}
  /* open panel = bottom sheet inside the screen: centred, 28rem at most, every control inside it */
  .mw:has(.mw-bubble:not([hidden])){inset-inline:0;margin-inline:auto;inline-size:min(calc(100% - 2 * var(--s-3,12px)),28rem);max-inline-size:none;transform:none;opacity:1;align-items:flex-end}
  .mw-ask-on:has(.mw-bubble:not([hidden])){max-inline-size:none}
  .mw-bubble.mw-ask{inline-size:100%;max-inline-size:100%;box-sizing:border-box}
  .mw-bubble.mw-ask::after{display:none}
  .mw-ask-in{overflow-y:auto;overscroll-behavior:contain;min-block-size:0;max-block-size:calc(100dvh - 150px)}
  .mw-ask-on .mw-chips{max-inline-size:100%}
}
@media (prefers-reduced-motion:reduce){.mw{transition:none}}
