.rf-assistant{position:fixed;right:22px;bottom:22px;z-index:9800;font-family:'Open Sans',sans-serif}.rf-assistant-launcher{display:inline-flex;align-items:center;gap:.6rem;min-height:54px;padding:.8rem 1.05rem;border:1px solid rgba(0,103,41,.18);border-radius:999px;background:#d1e0d7;color:#fff;font-weight:800;box-shadow:0 16px 42px rgba(0,103,41,.24);transition:.22s}.rf-assistant-launcher:hover{transform:translateY(-2px)}.rf-assistant-launcher-dot{width:9px;height:9px;border-radius:50%;background:#8ff0b1;box-shadow:0 0 0 5px rgba(143,240,177,.16)}.rf-assistant-panel{position:absolute;right:0;bottom:68px;width:min(430px,calc(100vw - 28px));height:min(680px,calc(100vh - 100px));display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(0,103,41,.14);border-radius:28px;background:radial-gradient(circle at 0 0,rgba(0,103,41,.08),transparent 32%),rgba(255,255,255,.98);box-shadow:0 28px 80px rgba(12,38,23,.20);backdrop-filter:blur(18px);opacity:0;visibility:hidden;transform:translateY(14px) scale(.98);pointer-events:none;transition:.25s}.rf-assistant.is-open .rf-assistant-panel{opacity:1;visibility:visible;transform:none;pointer-events:auto}.rf-assistant-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.1rem;border-bottom:1px solid rgba(0,103,41,.1);background:rgba(255,255,255,.84)}.rf-assistant-brand{display:flex;align-items:center;gap:.7rem}.rf-assistant-brand-mark,.rf-assistant-avatar{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:12px;background:#006729;color:#fff}.rf-assistant-brand strong{display:block}.rf-assistant-brand small{display:block;color:#6b756f;font-size:.65rem;font-weight:800;letter-spacing:.15em}.rf-assistant-close{width:36px;height:36px;border:0;border-radius:50%;background:rgba(0,103,41,.07);font-size:1.35rem}.rf-assistant-messages{flex:1;overflow-y:auto;padding:1.15rem}.rf-assistant-message-row{display:flex;align-items:flex-end;gap:.6rem;margin-bottom:1rem}.rf-assistant-message-row-user{justify-content:flex-end}.rf-assistant-avatar{width:30px;height:30px;flex-basis:30px;border-radius:10px;font-size:.8rem}.rf-assistant-bubble{max-width:84%;padding:.9rem 1rem;border-radius:20px;font-size:.9rem;line-height:1.55}.rf-assistant-bubble p{margin:0}.rf-assistant-bubble-bot{border:1px solid rgba(0,103,41,.11);border-bottom-left-radius:7px;background:#fff;color:#1c2921;box-shadow:0 10px 28px rgba(15,40,25,.06)}.rf-assistant-bubble-user{border-bottom-right-radius:7px;background:#006729;color:#fff}.rf-assistant-highlights{display:grid;gap:.4rem;margin:.8rem 0 0;padding:0;list-style:none}.rf-assistant-highlights li{position:relative;padding-left:1.05rem;font-size:.84rem}.rf-assistant-highlights li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:#24a456}.rf-assistant-source-block{margin-top:.95rem;padding-top:.8rem;border-top:1px solid rgba(0,103,41,.1)}.rf-assistant-source-label{display:block;margin-bottom:.5rem;color:#607067;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.rf-assistant-source-list{display:grid;gap:.45rem}.rf-assistant-source-chip{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:.45rem;padding:.55rem .65rem;border:1px solid rgba(0,103,41,.1);border-radius:13px;background:#f5faf7;color:#174529;font-size:.78rem;font-weight:700;text-decoration:none}.rf-assistant-source-chip:hover{background:#edf7f1;color:#006729}.rf-assistant-contact-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:.8rem;padding:.65rem .8rem;border-radius:999px;background:#006729;color:#fff;font-size:.78rem;font-weight:800;text-decoration:none}.rf-assistant-meta{display:flex;gap:.6rem;margin-top:.75rem;color:#849188;font-size:.65rem;font-weight:700}.rf-assistant-suggestions{display:flex;gap:.45rem;overflow-x:auto;padding:.1rem 1.05rem .85rem}.rf-assistant-suggestion{flex:0 0 auto;max-width:250px;padding:.5rem .7rem;border:1px solid rgba(0,103,41,.14);border-radius:999px;background:#fff;color:#235337;font-size:.72rem;font-weight:700}.rf-assistant-typing{margin:0 1.1rem .7rem 3.5rem;padding:.65rem .8rem;border-radius:14px;background:#f3f7f4}.rf-assistant-typing span{display:inline-block;width:6px;height:6px;margin:0 2px;border-radius:50%;background:#679176;animation:rfTyping 1s infinite}.rf-assistant-typing span:nth-child(2){animation-delay:.12s}.rf-assistant-typing span:nth-child(3){animation-delay:.24s}@keyframes rfTyping{40%{transform:translateY(-4px);opacity:1}}.rf-assistant-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;padding:.85rem 1rem;border-top:1px solid rgba(0,103,41,.1);background:#fff}.rf-assistant-input{width:100%;max-height:120px;resize:none;border:1px solid rgba(0,103,41,.15);border-radius:16px;outline:none;background:#f8fbf9;padding:.72rem .8rem;font:inherit;font-size:.86rem}.rf-assistant-input:focus{border-color:rgba(0,103,41,.4);box-shadow:0 0 0 3px rgba(0,103,41,.08)}.rf-assistant-send{align-self:end;width:44px;height:44px;border:0;border-radius:14px;background:#006729;color:#fff}.rf-assistant-note{padding:0 1rem .85rem;background:#fff;color:#7a887f;font-size:.67rem;text-align:center}.rf-assistant-honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important}@media(max-width:640px){.rf-assistant{right:12px;bottom:12px}.rf-assistant-panel{position:fixed;inset:10px;width:auto;height:auto;border-radius:22px}.rf-assistant-bubble{max-width:90%}}

/* =========================================================
   ROLLEX ASSISTANT V3
   ========================================================= */

/* Assistent bewusst oberhalb des festen Kontakt-Buttons. */
.rf-assistant {
  bottom: 30px;
}

/* Vorschlaege ohne horizontalen Scrollbalken. */
.rf-assistant-suggestions {
  display: grid;
  grid-template-columns: 1fr;
  gap: .4rem;
  overflow: visible;
  padding: .15rem 1.05rem .85rem;
}

.rf-assistant-suggestions[hidden] {
  display: none !important;
}

.rf-assistant-suggestion {
  width: 100%;
  max-width: none;
  min-width: 0;
  flex: none;
  padding: .5rem .7rem;
  text-align: left;
  white-space: normal;
  line-height: 1.35;
}

/* Kleiner visueller Cursor waehrend der Schreibanimation. */
.rf-assistant-answer-text:not(:empty)::after {
  content: "";
  display: inline-block;
  width: 2px;
  height: 1em;
  margin-left: 3px;
  vertical-align: -.12em;
  background: currentColor;
  opacity: .55;
  animation: rfAssistantCursor .75s steps(1) infinite;
}

.rf-assistant-bubble:has(.rf-assistant-meta) .rf-assistant-answer-text::after,
.rf-assistant-bubble:has(.rf-assistant-source-block) .rf-assistant-answer-text::after,
.rf-assistant-bubble:has(.rf-assistant-highlights) .rf-assistant-answer-text::after {
  display: none;
}

@keyframes rfAssistantCursor {
  50% { opacity: 0; }
}

@media (max-width: 640px) {
  .rf-assistant {
    bottom: 82px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rf-assistant-answer-text::after {
    animation: none !important;
    display: none !important;
  }
}
