/* Shelby's existing widget colours and geometry, with a separate test-page shell. */
:root {
  --chat--color--primary:#d2472a;
  --chat--color--primary-shade-50:#1c608f;
  --chat--color--primary--shade-100:#cf3c5c;
  --chat--color--secondary:#d2472a;
  --chat--color-white:#fff;
  --chat--color-light:#f2f4f8;
  --chat--color-dark:#1c608f;
  --chat--spacing:1rem;
  --chat--border-radius:.25rem;
  --chat--window--width:400px;
  --chat--window--height:600px;
  --chat--header--background:#1c608f;
  --chat--header--color:#f2f4f8;
  --chat--message--font-size:1rem;
  --chat--message--padding:1rem;
  --chat--message--bot--background:#fff;
  --chat--message--bot--color:#1c608f;
  --chat--message--user--background:#d2472a;
  --chat--message--user--color:#fff;
  --chat--toggle--background:#d2472a;
  --chat--toggle--hover--background:#1c608f;
  --chat--toggle--color:#fff;
  --chat--toggle--size:64px;
  --chat--textarea--height:50px;
}
.chat-header { position:relative; }
.chat-header>img { display:block; width:55%; height:auto; }
.chat-header>span { display:block; font-size:12px; margin-top:6px; }
.chat-header>button { position:absolute; right:12px; top:12px; }
.chat-message a { color:#1c608f; text-decoration:underline; overflow-wrap:anywhere; }
.chat-message p { line-height:1.65; }
.chat-message { overflow-wrap:anywhere; }
.chat-window { max-height:calc(100dvh - 110px); }
@media(max-width:720px) {
  .chat-window { width:calc(100vw - 24px)!important; max-height:calc(100dvh - 108px); }
  .chat-window-wrapper { right:12px!important; bottom:12px!important; }
  .chat-message { max-width:100%; }
}

/* Keep the composer and attribution visible even in a short mobile window. */
.chat-window .chat-layout { min-height:0; overflow:hidden; }
.chat-window .chat-header { flex-shrink:0; }
.chat-window .chat-body { min-height:0; flex:1 1 0; overflow-y:auto; }
.chat-window .chat-footer { flex-shrink:0; }
.chat-window .chat-input { display:block; }
.chat-window .chat-input textarea { min-height:50px; }
.shelby-powered { padding:8px 12px; font-size:13px; text-align:center; }
.shelby-powered a { color:#1c608f; text-decoration:underline; }

.chat-window .chat-powered-by { display:none!important; }

.chat-header>button.shelby-clear-chat { top:auto; bottom:12px; right:12px; padding:5px 9px; border:1px solid #ffffff80; border-radius:4px; background:transparent; color:#fff; font:inherit; font-size:12px; cursor:pointer; }
.chat-header>button.shelby-clear-chat:hover { background:#ffffff20; }
.chat-header>button.shelby-clear-chat:disabled { opacity:.6; cursor:wait; }
