/* Shared, self-contained support surface for the website and company workspace. */
.ro-support{--support-ink:#163b32;--support-paper:#f7f8f2;--support-lime:#ceef83;--support-muted:#687970;--support-line:#dfe6db;position:fixed;right:24px;bottom:24px;z-index:75;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--support-ink);font-size:14px;line-height:1.5;text-align:left}
.ro-support *{box-sizing:border-box}.ro-support [hidden]{display:none!important}.ro-support button,.ro-support input,.ro-support textarea{font:inherit}.ro-support button{cursor:pointer}.ro-support button:disabled{cursor:wait;opacity:.6}.ro-support :is(button,input,textarea):focus-visible{outline:3px solid #7b9d3f;outline-offset:3px}.ro-support svg{flex:none;vertical-align:middle}.ro-support-launcher{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px 20px;border:1px solid #31594d;border-radius:18px;background:var(--support-ink);color:white;box-shadow:0 8px 26px #163b3226;font-size:14px;font-weight:650;transition:transform .18s,box-shadow .18s}.ro-support-launcher:hover{transform:translateY(-3px);box-shadow:0 12px 30px #163b3236}.ro-support-unread{display:grid;place-items:center;min-width:24px;height:24px;border-radius:50%;background:var(--support-lime);color:var(--support-ink);font-size:12px}.ro-support-panel{position:absolute;right:0;bottom:72px;width:380px;max-width:calc(100vw - 32px);height:590px;max-height:calc(100dvh - 120px);display:flex;flex-direction:column;background:#fff;border:1px solid var(--support-line);border-radius:22px;overflow:hidden;box-shadow:0 24px 80px #163b322b,0 3px 12px #163b3210;isolation:isolate}.ro-support-header{display:flex;gap:12px;align-items:center;background:var(--support-ink);color:#fff;padding:20px}.ro-support-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--support-lime);color:var(--support-ink);flex:none}.ro-support-header h2{color:#fff;font-size:17px;letter-spacing:-.3px;margin:0 0 2px;font-weight:650;line-height:1.4}.ro-support-header p{margin:0;color:#d2e2d8;font-size:11px}.ro-support-close{border:1px solid #ffffff26;border-radius:12px;background:transparent;color:#fff;margin-left:auto;min-width:40px;min-height:40px;display:grid;place-items:center}.ro-support-close:hover{background:#ffffff15}.ro-support-availability{display:flex;gap:8px;align-items:center;margin:0;padding:11px 20px;border-bottom:1px solid var(--support-line);font-size:11px;background:var(--support-paper);color:var(--support-muted)}.ro-support-status-dot{width:7px;height:7px;border-radius:100%;background:#b59450;flex:none}.ro-support-availability.is-accepting .ro-support-status-dot{background:#427653}.ro-support-log{flex:1;min-height:100px;overflow-y:auto;overscroll-behavior:contain;padding:20px 18px;scrollbar-width:thin;background:linear-gradient(#f7f8f240,#fff)}.ro-support-welcome{padding:3px 4px 20px}.ro-support-welcome small{font-size:10px;font-weight:700;letter-spacing:1.3px;color:var(--support-muted)}.ro-support-welcome h3{font-size:24px;line-height:1.3;letter-spacing:-.8px;margin:9px 0 10px;color:var(--support-ink)}.ro-support-welcome p{font-size:13px;line-height:1.75;color:var(--support-muted);margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.ro-support-message{max-width:90%;width:fit-content;margin:0 0 14px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.ro-support-message.is-mine{margin-left:auto;align-items:flex-end}.ro-support-message-body{padding:11px 14px;border-radius:15px 15px 15px 4px;background:#f0f3ec;color:#163b32;font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.ro-support-message.is-mine .ro-support-message-body{border-radius:15px 15px 4px 15px;background:#163b32;color:#fff}.ro-support-message-meta{font-size:10px;color:var(--support-muted);padding:0 3px}.ro-support-message-meta span{font-weight:650}.ro-support-error{margin:0;padding:9px 18px;background:#fff0eb;color:#9d3a2c;font-size:12px;overflow-wrap:anywhere}.ro-support-retry{border:0;background:transparent;text-decoration:underline;font-weight:650;color:inherit;padding:3px 0;display:block}.ro-support-composer{padding:14px 18px 16px;border-top:1px solid var(--support-line);background:white}.ro-support-identity{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.ro-support label{display:block;color:#52665a;font-size:11px;font-weight:600;margin-bottom:5px}.ro-support input{width:100%;min-width:0;border:1px solid var(--support-line);background:#fff;color:var(--support-ink);border-radius:9px;min-height:40px;padding:8px 10px;font-size:12px}.ro-support-input-wrap{border:1px solid #cdd9c7;border-radius:13px;display:flex;gap:8px;padding:10px;background:white;align-items:flex-end}.ro-support-input-wrap:focus-within{border-color:#7d9957;box-shadow:0 0 0 3px #ceef833b}.ro-support textarea{color:var(--support-ink);background:transparent;border:0;padding:0;min-height:44px;max-height:120px;resize:vertical;width:100%;font-size:13px;line-height:1.5;outline:none}.ro-support textarea:focus-visible{outline:none}.ro-support-send{display:grid;place-items:center;border:0;border-radius:10px;width:38px;height:38px;background:var(--support-lime);color:var(--support-ink);flex:none}.ro-support-note{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:9px 0 0;font-size:9px;color:var(--support-muted);line-height:1.5}.ro-support-note a{color:inherit;text-decoration:none}.ro-support-closed{padding:14px 18px;background:var(--support-paper);border-top:1px solid var(--support-line)}.ro-support-closed p{font-size:12px;color:var(--support-muted);margin:0 0 10px}.ro-support-start{min-height:42px;border:1px solid #cbd8c0;background:white;border-radius:10px;padding:10px 14px;width:100%;font-weight:650;color:var(--support-ink)}.ro-support-more{display:block;margin:0 auto 16px;border:1px solid var(--support-line);border-radius:20px;padding:8px 14px;color:var(--support-ink);background:white;font-size:11px}.ro-support :is(.ro-support-more,.ro-support-start):hover{background:var(--support-paper)}
@media(max-width:700px){.ro-support{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.ro-support.has-workspace{bottom:calc(82px + env(safe-area-inset-bottom))}.ro-support-launcher{width:54px;height:54px;min-height:54px;border-radius:18px;justify-content:center;padding:0}.ro-support-launcher>span:not(.ro-support-unread){display:none}.ro-support-unread{position:absolute;top:-6px;right:-6px;border:2px solid var(--support-paper)}.ro-support-panel{position:fixed;right:12px;left:12px;width:auto;max-width:none;bottom:max(12px,env(safe-area-inset-bottom));height:min(620px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);border-radius:20px}.ro-support.is-open .ro-support-launcher{visibility:hidden}.ro-support-header{padding:17px 18px}.ro-support input,.ro-support textarea{font-size:16px}.ro-support-note{font-size:10px}.ro-support-composer{padding-bottom:max(16px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.ro-support-launcher{transition:none}.ro-support-launcher:hover{transform:none}}
@media(max-width:700px){.ro-support-close{min-width:44px;min-height:44px}.ro-support-send{width:44px;height:44px}}

/* The chat opens independently of its launcher. Short landscape viewports and
   the 701–760px navigation range must keep both close and send reachable. */
@media (max-width: 760px), (max-height: 560px) {
  .ro-support-panel { position: fixed; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); width: 380px; max-width: calc(100vw - 24px); height: min(620px, calc(100dvh - 24px - env(safe-area-inset-bottom))); max-height: calc(100dvh - 24px - env(safe-area-inset-bottom)); overflow-y: auto; overscroll-behavior: contain; }
  .ro-support-header { position: sticky; top: 0; z-index: 2; flex-shrink: 0; padding: 14px 16px; }
  .ro-support-availability, .ro-support-composer, .ro-support-closed, .ro-support-error { flex-shrink: 0; }
  .ro-support-log { flex: 1 0 100px; }
  .ro-support-close, .ro-support-send { min-width: 44px; min-height: 44px; }
  .ro-support input, .ro-support textarea { font-size: 16px; }
  .ro-support.is-open .ro-support-launcher { visibility: hidden; }
}
@media (max-width: 760px) {
  .ro-support-panel { left: 12px; width: auto; max-width: none; }
  .ro-support-launcher { width: 54px; min-height: 54px; height: 54px; padding: 0; justify-content: center; }
  .ro-support-launcher > span:not(.ro-support-unread) { display: none; }
}
