/* Rudolfsen Live Chat – the bubble and the chat window. Colours follow the settings, or GLOBAL DESIGN from Cloud File Center. */
.rlc{--c:var(--rlc-c,var(--gd-btn-bg,#4a86d8));--ct:var(--rlc-ct,#fff);--r:var(--rlc-r,var(--gd-fld-r,7px));--f:var(--rlc-f,inherit);--ink:#1d2433;--soft:#f1f4f8;--line:#dde3eb;
  position:fixed;bottom:22px;z-index:99990;font-family:var(--f);font-size:15px;line-height:1.4;color:var(--ink);-webkit-font-smoothing:antialiased}
.rlc-right{right:22px}.rlc-left{left:22px}
.rlc *,.rlc *::before,.rlc *::after{box-sizing:border-box}
.rlc button{font-family:inherit;cursor:pointer}
.rlc-bubble{position:relative;width:60px;height:60px;border:0;border-radius:50%;background:var(--c);color:var(--ct);display:grid;place-items:center;box-shadow:0 8px 24px rgba(16,24,40,.22),0 2px 6px rgba(16,24,40,.12);transition:transform .2s ease,box-shadow .2s ease;padding:0}
.rlc-bubble:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 12px 30px rgba(16,24,40,.26)}
.rlc-bubble:focus-visible,.rlc-x:focus-visible,.rlc-send:focus-visible{outline:3px solid color-mix(in srgb,var(--c) 45%,transparent);outline-offset:3px}
.rlc-bubble svg{width:28px;height:28px;transition:transform .25s ease,opacity .2s ease}
.rlc-bubble .rlc-i-close{position:absolute;opacity:0;transform:rotate(-90deg) scale(.6)}
.rlc.is-open .rlc-bubble .rlc-i-chat{opacity:0;transform:rotate(90deg) scale(.6)}
.rlc.is-open .rlc-bubble .rlc-i-close{opacity:1;transform:none}
.rlc-badge{position:absolute;top:-3px;right:-3px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#e5484d;color:#fff;font-size:12px;font-weight:700;line-height:22px;text-align:center;box-shadow:0 0 0 2px #fff}
.rlc-badge[hidden]{display:none}
.rlc-panel{position:absolute;bottom:76px;width:var(--rlc-w,370px);height:min(var(--rlc-h,600px),calc(100vh - 120px));background:#fff;border-radius:14px;box-shadow:0 18px 50px rgba(16,24,40,.25),0 3px 10px rgba(16,24,40,.1);display:flex;flex-direction:column;overflow:hidden;
  opacity:0;transform:translateY(12px) scale(.98);transform-origin:bottom right;pointer-events:none;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility 0s .2s}
.rlc-right .rlc-panel{right:0}.rlc-left .rlc-panel{left:0;transform-origin:bottom left}
.rlc.is-open .rlc-panel{opacity:1;transform:none;pointer-events:auto;visibility:visible;transition:opacity .2s ease,transform .2s ease}
.rlc-head{background:var(--c);color:var(--ct);padding:16px 16px 16px 18px;display:flex;align-items:center;gap:12px;flex:none}
.rlc-avatar{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.18);display:grid;place-items:center;overflow:hidden;flex:none}
.rlc-avatar img{width:100%;height:100%;object-fit:cover}.rlc-avatar svg{width:22px;height:22px}
.rlc-titles{flex:1;min-width:0}
.rlc-title{font-size:17px;font-weight:600;margin:0;line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.rlc-state{font-size:13px;opacity:.9;display:flex;align-items:center;gap:6px;margin-top:3px}
.rlc-dot{width:8px;height:8px;border-radius:50%;background:#c3cad5}.rlc-state.is-on .rlc-dot{background:#3ddc84;box-shadow:0 0 0 3px rgba(61,220,132,.25)}
.rlc-x{width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:inherit;display:grid;place-items:center;flex:none;padding:0}
.rlc-x:hover{background:rgba(255,255,255,.16)}.rlc-x svg{width:20px;height:20px}
.rlc-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:18px 16px 8px;background:#fbfcfd;display:flex;flex-direction:column;gap:8px}
.rlc-msg{max-width:82%;padding:10px 13px;border-radius:14px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.45;animation:rlc-in .18s ease}
.rlc-msg.from-admin{align-self:flex-start;background:var(--soft);border-bottom-left-radius:4px}
.rlc-msg.from-visitor{align-self:flex-end;background:var(--c);color:var(--ct);border-bottom-right-radius:4px}
.rlc-msg.is-note,.rlc-msg.from-system{align-self:center;max-width:92%;background:transparent;color:#5b6575;font-size:13px;text-align:center;padding:4px 8px}
.rlc-time{display:block;font-size:11px;opacity:.65;margin-top:4px}
.rlc-foot{border-top:1px solid var(--line);padding:12px;background:#fff;flex:none}
.rlc-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
.rlc-fields[hidden]{display:none}
.rlc input.rlc-in,.rlc textarea.rlc-in{width:100%;margin:0;border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;font:inherit;font-size:15px;color:var(--ink);background:#fff;box-shadow:none;outline:0;min-height:0;height:auto}
.rlc input.rlc-in:focus,.rlc textarea.rlc-in:focus{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 18%,transparent)}
.rlc-row{display:flex;gap:8px;align-items:flex-end}
.rlc textarea.rlc-in{resize:none;max-height:120px;line-height:1.4;flex:1}
.rlc-send{width:44px;height:44px;flex:none;border:0;border-radius:var(--r);background:var(--c);color:var(--ct);display:grid;place-items:center;padding:0;transition:filter .15s}
.rlc-send:hover{filter:brightness(.92)}.rlc-send:disabled{opacity:.5;cursor:default}.rlc-send svg{width:20px;height:20px}
.rlc-err{color:#c4282d;font-size:13px;margin:6px 2px 0}.rlc-err:empty{display:none}
.rlc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
/* Profile picture: square image cropped to a circle, with a thin white ring (1.0.2) */
.rlc-avatar.has-logo{width:44px;height:44px;border-radius:50%;background:#fff;padding:0;box-shadow:0 0 0 2px rgba(255,255,255,.85),0 2px 6px rgba(16,24,40,.18)}
.rlc-avatar.has-logo img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;border-radius:50%}
/* The site's own button and field styles must not change the chat (1.0.1) */
#rlc button.rlc-bubble,#rlc button.rlc-x,#rlc button.rlc-send{padding:0!important;margin:0!important;min-height:0!important;min-width:0!important;border:0!important;box-shadow:none;text-transform:none!important;letter-spacing:0!important;line-height:1!important;font-size:0!important;display:grid!important;place-items:center!important}
#rlc button.rlc-bubble{width:60px!important;height:60px!important;border-radius:50%!important;background:var(--c)!important;color:var(--ct)!important;box-shadow:0 8px 24px rgba(16,24,40,.22),0 2px 6px rgba(16,24,40,.12)!important}
#rlc button.rlc-x{width:36px!important;height:36px!important;border-radius:50%!important;background:transparent!important;color:inherit!important}
#rlc button.rlc-x:hover{background:rgba(255,255,255,.16)!important}
#rlc button.rlc-send{width:48px!important;height:48px!important;border-radius:var(--r)!important;background:var(--c)!important;color:var(--ct)!important}
#rlc button svg{visibility:visible!important;opacity:1;display:block!important;flex:none;color:inherit!important;stroke:currentColor!important;fill:none!important}
#rlc button.rlc-send svg,#rlc button.rlc-x svg{width:20px!important;height:20px!important}
#rlc button.rlc-bubble svg{width:28px!important;height:28px!important}
#rlc button.rlc-bubble .rlc-i-close{opacity:0}#rlc.is-open button.rlc-bubble .rlc-i-chat{opacity:0}#rlc.is-open button.rlc-bubble .rlc-i-close{opacity:1}
#rlc textarea.rlc-in{min-height:48px!important;max-height:120px!important;padding:12px!important;line-height:1.4!important}
#rlc input.rlc-in{height:44px!important;min-height:44px!important;padding:0 12px!important}
@media (max-width:600px){#rlc button.rlc-bubble{width:56px!important;height:56px!important}}
/* Green "we are online" dot on the bubble (1.1.0) */
.rlc-online{position:absolute;right:1px;bottom:1px;width:15px;height:15px;border-radius:50%;background:#2fbf71;box-shadow:0 0 0 2.5px #fff;pointer-events:none}
.rlc-online::after{content:"";position:absolute;inset:0;border-radius:50%;background:#2fbf71;animation:rlc-pulse 2.4s ease-out infinite}
.rlc-online[hidden]{display:none}
@keyframes rlc-pulse{0%{transform:scale(1);opacity:.55}70%,100%{transform:scale(2.3);opacity:0}}
/* Opening effects – chosen in Live Chat → Settings (1.1.0) */
.rlc-anim-none .rlc-panel{transition:none!important;transform:none!important}
.rlc-anim-fade .rlc-panel{transform:none!important;transition:opacity .25s ease,visibility 0s .25s}
.rlc-anim-fade.is-open .rlc-panel{transition:opacity .25s ease}
.rlc-anim-slide .rlc-panel{transform:translateY(30px)}
.rlc-anim-slide.is-open .rlc-panel{transform:none;transition:opacity .3s ease,transform .38s cubic-bezier(.2,.8,.2,1)}
.rlc-anim-pop .rlc-panel{transform:scale(.82)}
.rlc-anim-pop.is-open .rlc-panel{transform:none;transition:opacity .2s ease,transform .26s cubic-bezier(.3,1.4,.5,1)}
.rlc-anim-spring.is-open .rlc-panel{animation:rlc-spring .55s cubic-bezier(.2,.9,.25,1) both}
@keyframes rlc-spring{0%{opacity:0;transform:translateY(42px) scale(.86)}55%{opacity:1;transform:translateY(-9px) scale(1.02)}78%{transform:translateY(3px) scale(.995)}100%{opacity:1;transform:none}}
@keyframes rlc-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media (max-width:600px){
  .rlc{bottom:16px}.rlc-right{right:16px}.rlc-left{left:16px}
  .rlc-bubble{width:56px;height:56px}
  /* Mobile (1.0.3): a floating popup card above the bubble – not full screen */
  .rlc .rlc-panel,.rlc-right .rlc-panel,.rlc-left .rlc-panel{position:fixed;left:0;right:0;margin:0 auto;width:min(var(--rlc-mw,370px),calc(100vw - 24px));bottom:calc(88px + env(safe-area-inset-bottom));height:min(var(--rlc-mh,550px),calc(100dvh - 150px));border-radius:16px;transform:translateY(14px) scale(.98);transform-origin:bottom center}
  .rlc-head{padding:14px 14px 14px 16px}.rlc-title{font-size:16px}
  .rlc-input,.rlc input.rlc-in,.rlc textarea.rlc-in{font-size:16px}
  .rlc-fields{grid-template-columns:1fr}
  .rlc-msg{max-width:88%}
  .rlc-hide-mobile{display:none}
  .rlc-dim{position:fixed;inset:0;background:rgba(16,24,40,.28);opacity:0;pointer-events:none;transition:opacity .2s ease}
  .rlc.is-open .rlc-dim{opacity:1;pointer-events:auto}
  html.rlc-lock,html.rlc-lock body{overflow:hidden}
}
@media (min-width:601px){.rlc-dim{display:none}}
@media (prefers-reduced-motion:reduce){.rlc *,.rlc *::after{transition:none!important;animation:none!important}}
@media print{.rlc{display:none}}
