/* Ask Roudfit (demo FAQ chat): floating button + panel. Uses the site's tokens (styles.css :root). */
.ask-fab{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));z-index:40;display:inline-flex;align-items:center;gap:8px;height:56px;min-width:56px;padding:0 20px 0 16px;border:2px solid #fff;border-radius:999px;background:var(--red);color:#fff;font:700 .8rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.55),0 0 0 4px rgba(255,0,0,.18);transition:transform .25s,opacity .2s}
.ask-fab svg{width:22px;height:22px;flex:none}
.ask-fab:hover{transform:translateY(-2px)}
.ask-fab:focus-visible{outline:3px solid #fff;outline-offset:3px}
.ask-fab.is-compact{width:56px;padding:0;justify-content:center}
.ask-fab.is-compact span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ask-fab.is-dodge{opacity:0;visibility:hidden;pointer-events:none}
.ask-open .ask-fab{opacity:0;visibility:hidden;pointer-events:none}
.ask[hidden]{display:none}
.ask{position:fixed;inset:0;z-index:60}
.ask__scrim{position:absolute;inset:0;background:rgba(0,0,0,.6);opacity:0;transition:opacity .25s}
.ask.is-in .ask__scrim{opacity:1}
.ask__sheet{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--bk);color:#fff;font:400 15px/1.5 var(--sans);height:100%;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);transform:translateY(24px);opacity:0;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .2s}
.ask.is-in .ask__sheet{transform:none;opacity:1}
.ask__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 18px;border-bottom:1px solid var(--line);background:#0b0b0b}
.ask__title{margin:0;display:flex;align-items:center;gap:10px;font:400 1.5rem/1 var(--disp);letter-spacing:.03em;text-transform:uppercase}
.ask__title b{font-weight:400;color:var(--red)}
.ask__demo{font:700 .62rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:99px;padding:5px 8px}
.ask__x{all:unset;box-sizing:border-box;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;cursor:pointer;color:#fff}
.ask__x:hover{background:rgba(255,255,255,.08)}
.ask__x:focus-visible{outline:3px solid var(--red);outline-offset:0}
.ask__log{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:18px;display:flex;flex-direction:column;gap:10px}
.ask__msg{margin:0;max-width:88%;padding:11px 14px;border-radius:16px;white-space:pre-wrap;overflow-wrap:anywhere}
.ask__msg--bot{align-self:flex-start;background:var(--bk2);border:1px solid var(--line);border-top-left-radius:4px}
.ask__msg--user{align-self:flex-end;background:var(--red);border-top-right-radius:4px}
.ask__msg--fb{border-color:rgba(255,0,0,.55)}
.ask__chips[hidden]{display:none}
.ask__chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 0}
.ask__chip{all:unset;box-sizing:border-box;min-height:44px;display:inline-flex;align-items:center;padding:10px 14px;border:1px solid rgba(255,255,255,.28);border-radius:99px;font:600 .86rem/1.25 var(--sans);color:#fff;cursor:pointer}
.ask__chip:hover{border-color:#fff}
.ask__chip:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.ask__typing{align-self:flex-start;display:inline-flex;gap:5px;padding:14px 16px;border-radius:16px;border-top-left-radius:4px;background:var(--bk2);border:1px solid var(--line)}
.ask__typing i{width:7px;height:7px;border-radius:50%;background:var(--g);animation:askdot 1s infinite ease-in-out}
.ask__typing i:nth-child(2){animation-delay:.15s}.ask__typing i:nth-child(3){animation-delay:.3s}
@keyframes askdot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.ask__form{display:flex;gap:8px;align-items:flex-end;padding:10px 12px 6px;border-top:1px solid var(--line)}
.ask__in{flex:1;min-height:44px;max-height:120px;resize:none;padding:11px 14px;border-radius:22px;border:1px solid rgba(255,255,255,.25);background:#111;color:#fff;font:400 16px/1.35 var(--sans)}
.ask__in:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(255,0,0,.25)}
.ask__send{all:unset;box-sizing:border-box;flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff;cursor:pointer}
.ask__send[disabled]{opacity:.45;cursor:default}
.ask__send:focus-visible{outline:3px solid #fff;outline-offset:2px}
.ask__count{margin:0;padding:0 18px 4px;text-align:right;font:600 .68rem/1.2 var(--sans);color:var(--g)}
.ask__foot{display:flex;align-items:center;gap:10px;padding:8px 12px 12px}
.ask__rudi{flex:1;min-height:48px}
.ask__dm{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;font:700 .72rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--g);text-decoration:none}
.ask__dm:hover{color:#fff}
.ask__note{margin:0;padding:0 18px 10px;font:400 .72rem/1.4 var(--sans);color:var(--g)}
.ask .sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
html.ask-lock,html.ask-lock body{overflow:hidden}
@media(min-width:700px){
 .ask__scrim{background:rgba(0,0,0,.35)}
 .ask__sheet{inset:auto 24px 24px auto;width:410px;height:min(680px,calc(100vh - 48px));border:1px solid rgba(255,255,255,.18);border-radius:22px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.7);padding:0}
}
@media(prefers-reduced-motion:reduce){.ask-fab,.ask__sheet,.ask__scrim{transition:none}.ask__typing i{animation:none;opacity:.7}}
