/* Remondikoda public-site support chat. Markup: lib/visitor-support/widget.js.
   Uses the rk-tokens.css variables where the page loads them, with the same
   values as fallbacks for pages that do not (legal pages). */
.rkvc{
  --vc-ink:var(--rk-ink,#15181D); --vc-ink-2:var(--rk-ink-2,#232830); --vc-ink-3:var(--rk-ink-3,#3A404A);
  --vc-paper:var(--rk-steel-0,#FFFFFF); --vc-50:var(--rk-steel-50,#F4F3F1); --vc-100:var(--rk-steel-100,#EAE8E4);
  --vc-200:var(--rk-steel-200,#D8D5CF); --vc-400:var(--rk-steel-400,#A19D96); --vc-600:var(--rk-steel-600,#5F5C57);
  --vc-accent:var(--rk-accent,#FF6A1A); --vc-accent-hover:var(--rk-accent-hover,#FF7F3A); --vc-accent-active:var(--rk-accent-active,#E85A0C);
  --vc-on-accent:var(--rk-on-accent,#15181D); --vc-ok:var(--rk-ok,#1E8A4F); --vc-error:var(--rk-error,#B4321F);
  --vc-ease:var(--rk-ease-out,cubic-bezier(.2,.7,.2,1));
  --vc-font:var(--rk-font-ui,'Inter',system-ui,-apple-system,'Segoe UI',sans-serif);
  --vc-gap:20px;
  position:fixed; right:calc(var(--vc-gap) + env(safe-area-inset-right,0px)); bottom:calc(var(--vc-gap) + env(safe-area-inset-bottom,0px));
  z-index:1000; font:400 15px/1.45 var(--vc-font); color:var(--vc-ink); -webkit-font-smoothing:antialiased;
}
.rkvc *,.rkvc *::before,.rkvc *::after{box-sizing:border-box}
.rkvc [hidden]{display:none!important}

/* launcher */
.rkvc-launch{
  position:relative; display:inline-flex; align-items:center; gap:9px; height:48px; padding:0 20px 0 16px;
  border:1px solid rgba(255,255,255,.08); border-radius:999px; background:var(--vc-ink); color:var(--vc-50);
  font:600 15px/1 var(--vc-font); letter-spacing:-.1px; cursor:pointer;
  box-shadow:0 1px 0 rgba(21,24,29,.06),0 10px 28px -10px rgba(21,24,29,.55);
  transition:transform .18s var(--vc-ease),background-color .15s,box-shadow .18s var(--vc-ease);
  -webkit-tap-highlight-color:transparent;
}
.rkvc-launch svg{color:var(--vc-accent);flex:none}
.rkvc-launch:hover{background:var(--vc-ink-2);transform:translateY(-1px);box-shadow:0 1px 0 rgba(21,24,29,.06),0 14px 32px -10px rgba(21,24,29,.6)}
.rkvc-launch:active{transform:translateY(0) scale(.98)}
.rkvc-launch:focus-visible,.rkvc-close:focus-visible,.rkvc-send:focus-visible{outline:none;box-shadow:0 0 0 2px var(--vc-paper),0 0 0 4px var(--vc-accent)}
.rkvc.is-open .rkvc-launch{opacity:0;pointer-events:none;transform:scale(.9)}
.rkvc.is-aside .rkvc-launch{opacity:0;pointer-events:none;transform:translateY(10px) scale(.94);transition:opacity .16s,transform .2s var(--vc-ease)}
.rkvc-badge{
  position:absolute; top:-5px; right:-5px; min-width:20px; height:20px; padding:0 6px; border-radius:999px;
  background:var(--vc-accent); color:var(--vc-on-accent); border:2px solid var(--vc-paper);
  font:700 11px/16px var(--vc-font); text-align:center; animation:rkvc-pop .3s var(--vc-ease);
}

/* panel */
.rkvc-panel{
  position:absolute; right:0; bottom:0; width:380px; height:min(580px,calc(100vh - 2 * var(--vc-gap)));
  display:flex; flex-direction:column; overflow:hidden;
  background:var(--vc-paper); border:1px solid rgba(21,24,29,.08); border-radius:18px;
  box-shadow:0 1px 0 rgba(21,24,29,.04),0 24px 64px -16px rgba(21,24,29,.45),0 4px 14px -6px rgba(21,24,29,.18);
  transform-origin:100% 100%; animation:rkvc-in .22s var(--vc-ease);
}
.rkvc-head{display:flex; align-items:center; gap:12px; padding:14px 12px 14px 16px; background:var(--vc-ink); color:var(--vc-50)}
.rkvc-head>svg{flex:none;border-radius:9px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.rkvc-head__txt{flex:1;min-width:0}
.rkvc-title{margin:0;font:600 16px/1.25 var(--rk-font-display,'Outfit','Inter',sans-serif);letter-spacing:-.1px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rkvc-sub{margin:2px 0 0;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--rk-steel-on-dark,#B9B6B0)}
.rkvc-dot{width:7px;height:7px;border-radius:50%;background:#3FBF77;box-shadow:0 0 0 3px rgba(63,191,119,.18)}
.rkvc-close{
  flex:none; width:40px; height:40px; display:grid; place-items:center; border:0; border-radius:10px;
  background:transparent; color:var(--rk-steel-on-dark,#B9B6B0); cursor:pointer; transition:background-color .15s,color .15s;
}
.rkvc-close:hover{background:rgba(255,255,255,.08);color:#fff}

.rkvc-log{flex:1; overflow-y:auto; overscroll-behavior:contain; padding:18px 16px 8px; background:var(--vc-50); display:flex; flex-direction:column; gap:10px}
.rkvc-intro{
  margin:0 0 4px; padding:12px 14px; border-radius:14px; background:var(--vc-paper); border:1px solid var(--vc-100);
  color:var(--vc-ink-3); font-size:14px; line-height:1.5;
}
.rkvc-msg{display:flex;flex-direction:column;max-width:86%;animation:rkvc-msg .2s var(--vc-ease)}
.rkvc-msg--visitor{align-self:flex-end;align-items:flex-end}
.rkvc-msg--agent{align-self:flex-start;align-items:flex-start}
.rkvc-bubble{padding:9px 13px;border-radius:16px;font-size:15px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
.rkvc-msg--visitor .rkvc-bubble{background:var(--vc-ink);color:#fff;border-bottom-right-radius:5px}
.rkvc-msg--agent .rkvc-bubble{background:var(--vc-paper);color:var(--vc-ink);border:1px solid var(--vc-100);border-bottom-left-radius:5px}
.rkvc-bubble a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.rkvc-msg--agent .rkvc-bubble a{color:var(--rk-accent-ink,#8A3300)}
.rkvc-meta{margin-top:4px;padding:0 4px;font-size:11.5px;color:var(--vc-600);letter-spacing:.1px}
.rkvc-msg.is-pending .rkvc-bubble{opacity:.6}
.rkvc-msg.is-failed .rkvc-bubble{background:#fff;color:var(--vc-error);border:1px solid #F0C9C1}

.rkvc-form{flex:none;padding:10px 12px 10px;background:var(--vc-paper);border-top:1px solid var(--vc-100)}
.rkvc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.rkvc-email,.rkvc-input{
  width:100%; border:1px solid var(--vc-200); border-radius:12px; background:var(--vc-paper); color:var(--vc-ink);
  font:400 15px/1.4 var(--vc-font); transition:border-color .15s,box-shadow .15s; -webkit-appearance:none; appearance:none;
}
.rkvc-email{height:40px;padding:0 12px;margin:0 0 8px;font-size:14px}
.rkvc-email::placeholder,.rkvc-input::placeholder{color:var(--vc-400)}
.rkvc-email:focus,.rkvc-input:focus{outline:none;border-color:var(--vc-ink-3);box-shadow:0 0 0 3px rgba(21,24,29,.08)}
.rkvc-email.is-invalid{border-color:var(--vc-error);box-shadow:0 0 0 3px rgba(180,50,31,.12)}
.rkvc-compose{display:flex;align-items:flex-end;gap:8px}
.rkvc-input{flex:1;min-height:44px;max-height:132px;padding:11px 12px;resize:none;display:block;overflow-y:hidden}
.rkvc-send{
  flex:none; width:44px; height:44px; display:grid; place-items:center; border:0; border-radius:12px;
  background:var(--vc-accent); color:var(--vc-on-accent); cursor:pointer; transition:background-color .15s,transform .12s,opacity .15s;
}
.rkvc-send:hover:not(:disabled){background:var(--vc-accent-hover)}
.rkvc-send:active:not(:disabled){background:var(--vc-accent-active);transform:scale(.96)}
.rkvc-send:disabled{background:var(--vc-100);color:var(--vc-400);cursor:default}
.rkvc-send.is-busy svg{animation:rkvc-nudge .9s ease-in-out infinite}
.rkvc-note{margin:7px 2px 0;min-height:16px;font-size:12px;line-height:16px;color:var(--vc-600)}
.rkvc-note.is-ok{color:var(--vc-ok)}
.rkvc-note.is-error{color:var(--vc-error)}

@keyframes rkvc-in{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
@keyframes rkvc-msg{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes rkvc-pop{0%{transform:scale(.4)}70%{transform:scale(1.12)}100%{transform:scale(1)}}
@keyframes rkvc-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(3px)}}

/* phones: round launcher, panel becomes a sheet with the page edge visible on top */
@media (max-width:560px){
  .rkvc{--vc-gap:14px}
  .rkvc-launch{width:52px;height:52px;padding:0;justify-content:center}
  .rkvc-launch svg{width:22px;height:22px}
  .rkvc-launch__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .rkvc.is-open{left:0;right:0;bottom:0}
  .rkvc-panel{
    position:fixed; left:0; right:0; bottom:0; width:auto; height:min(620px,calc(100% - 56px));
    height:min(620px,calc(100dvh - 56px)); border-radius:20px 20px 0 0; border-bottom:0;
    padding-bottom:env(safe-area-inset-bottom,0px); animation-name:rkvc-up;
  }
  .rkvc-input,.rkvc-email{font-size:16px}
}
@keyframes rkvc-up{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.rkvc *{animation:none!important;transition:none!important}}
@media print{.rkvc{display:none}}
