.bot-shell{
  --bot-accent:var(--purple,#8b5cf6);
  --bot-accent-rgb:139,92,246;
  position:relative;
  isolation:isolate;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  animation:none;
}
.bot-shell::before{content:"";position:absolute;z-index:-1;top:-90px;right:-5%;width:min(620px,55vw);height:420px;background:radial-gradient(ellipse at 72% 28%,rgba(var(--bot-accent-rgb),.16),transparent 68%);pointer-events:none}
.bot-shell[data-bot-platform="underdog"]{--bot-accent:#f3d817;--bot-accent-rgb:243,216,23}
.bot-shell[data-bot-platform="prizepicks"]{--bot-accent:#8b5cf6;--bot-accent-rgb:139,92,246}
.bot-shell[data-bot-platform="dabble"]{--bot-accent:#ff4fa3;--bot-accent-rgb:255,79,163}
.bot-shell[data-bot-platform="draftkings-pick6"]{--bot-accent:#ff7300;--bot-accent-rgb:255,115,0}
.bot-shell[data-bot-platform="draftkings"]{--bot-accent:#53d337;--bot-accent-rgb:83,211,55}
.bot-shell[data-bot-platform="fanduel"]{--bot-accent:#1493ff;--bot-accent-rgb:20,147,255}
.bot-shell[data-bot-platform="betmgm"]{--bot-accent:#d6b05f;--bot-accent-rgb:214,176,95}
.bot-shell[data-bot-platform="caesars"]{--bot-accent:#0f9b70;--bot-accent-rgb:15,155,112}
.bot-shell[data-bot-platform="fanatics"]{--bot-accent:#e31837;--bot-accent-rgb:227,24,55}
.bot-shell[data-bot-platform="betrivers"]{--bot-accent:#1673c9;--bot-accent-rgb:22,115,201}
.bot-shell[data-bot-platform="thescore-bet"]{--bot-accent:#f4d000;--bot-accent-rgb:244,208,0}
.bot-shell[data-bot-platform="hard-rock-bet"]{--bot-accent:#00a6a6;--bot-accent-rgb:0,166,166}
.bot-heading{position:relative;padding:8px 4px 28px;border-bottom:1px solid color-mix(in srgb,var(--bot-accent) 22%,var(--border))}
.bot-heading .eyebrow{color:var(--bot-accent);text-shadow:0 0 22px rgba(var(--bot-accent-rgb),.25)}
.bot-heading h1,.bot-wordmark{display:flex;align-items:baseline;margin:.14em 0 .08em;font-family:Inter,Arial,sans-serif;font-size:clamp(54px,8vw,92px);font-weight:950;line-height:.92;letter-spacing:-.085em;color:#fff;text-shadow:0 8px 34px rgba(0,0,0,.32)}
.bot-wordmark-tru{letter-spacing:-.075em}
.bot-wordmark-bot{margin-left:.055em;background:linear-gradient(135deg,#fff 0%,color-mix(in srgb,var(--bot-accent) 72%,#fff) 36%,var(--bot-accent) 76%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 20px rgba(var(--bot-accent-rgb),.2))}
.bot-heading p{max-width:620px;color:color-mix(in srgb,var(--text) 72%,transparent);font-size:15px}
.bot-reset{border-color:color-mix(in srgb,var(--bot-accent) 34%,var(--border));background:rgba(var(--bot-accent-rgb),.06)}
.bot-reset:hover:not(:disabled){border-color:var(--bot-accent);box-shadow:0 10px 28px rgba(var(--bot-accent-rgb),.16);transform:translateY(-2px)}
.bot-toolbar{margin:22px 0 18px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--bot-accent) 18%,var(--border));border-radius:16px;background:rgba(255,255,255,.025);box-shadow:inset 0 1px rgba(255,255,255,.035)}
.bot-toolbar select{border-color:color-mix(in srgb,var(--bot-accent) 38%,var(--border));background:color-mix(in srgb,var(--theme-base) 91%,var(--bot-accent) 9%);box-shadow:0 0 0 1px rgba(var(--bot-accent-rgb),.04),0 8px 24px rgba(0,0,0,.15)}
.bot-conversation{height:clamp(460px,58vh,760px);min-height:0;max-height:760px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:clamp(18px,2.5vw,30px);border:1px solid color-mix(in srgb,var(--bot-accent) 18%,var(--border));border-radius:22px;background:linear-gradient(155deg,rgba(255,255,255,.026),rgba(0,0,0,.1));box-shadow:inset 0 1px rgba(255,255,255,.035)}
.bot-welcome{position:relative;overflow:hidden;padding:clamp(24px,4vw,46px);border:1px solid color-mix(in srgb,var(--bot-accent) 22%,var(--border));border-radius:22px;background:radial-gradient(circle at 88% 12%,rgba(var(--bot-accent-rgb),.13),transparent 32%),rgba(6,7,12,.36)}
.bot-welcome::after{content:"";position:absolute;width:180px;height:180px;right:-90px;bottom:-100px;border:1px solid rgba(var(--bot-accent-rgb),.22);border-radius:50%;box-shadow:0 0 0 28px rgba(var(--bot-accent-rgb),.035),0 0 0 58px rgba(var(--bot-accent-rgb),.025)}
.bot-prompts button{position:relative;z-index:1;border-color:color-mix(in srgb,var(--bot-accent) 25%,var(--border));border-radius:14px;background:rgba(255,255,255,.028);transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}
.bot-prompts button:hover{transform:translateY(-2px);border-color:var(--bot-accent);background:rgba(var(--bot-accent-rgb),.08);box-shadow:0 12px 28px rgba(var(--bot-accent-rgb),.12)}
.bot-message{width:min(82%,760px);padding:16px 18px;border:1px solid color-mix(in srgb,var(--bot-accent) 18%,var(--border));border-radius:18px;background:rgba(255,255,255,.035);box-shadow:0 12px 34px rgba(0,0,0,.17);transform-origin:bottom left;animation:botMessageIn .38s cubic-bezier(.2,.85,.25,1) both}
.bot-message.user{margin-left:auto;border-bottom-right-radius:6px;border-color:color-mix(in srgb,var(--bot-accent) 42%,var(--border));background:linear-gradient(135deg,rgba(var(--bot-accent-rgb),.2),rgba(var(--bot-accent-rgb),.075));transform-origin:bottom right}
.bot-message.assistant{margin-right:auto;border-bottom-left-radius:6px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018))}
.bot-message b{display:block;margin-bottom:7px;color:var(--bot-accent);font-size:10px;letter-spacing:1.3px}
.bot-message p{margin:0;line-height:1.65}
.bot-thinking{display:flex;align-items:center;gap:7px;width:max-content;padding:12px 16px;border:1px solid color-mix(in srgb,var(--bot-accent) 24%,var(--border));border-radius:16px 16px 16px 6px;background:rgba(255,255,255,.035);color:transparent;font-size:0}
.bot-thinking::before{content:"truBOT is thinking";color:var(--muted);font-size:12px}
.bot-thinking::after{content:"•••";color:var(--bot-accent);font-size:15px;letter-spacing:4px;animation:botDots 1.15s steps(4,end) infinite}
.bot-composer{margin-top:16px;padding:14px;border:1px solid color-mix(in srgb,var(--bot-accent) 22%,var(--border));border-radius:20px;background:rgba(5,6,10,.52);box-shadow:0 18px 46px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.035);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.bot-composer:focus-within{border-color:color-mix(in srgb,var(--bot-accent) 72%,#fff);box-shadow:0 20px 54px rgba(0,0,0,.28),0 0 0 3px rgba(var(--bot-accent-rgb),.1);transform:translateY(-1px)}
.bot-composer textarea{border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;resize:none;line-height:1.55}
.bot-composer textarea:focus,.bot-composer textarea:focus-visible{border:0!important;outline:0!important;box-shadow:none!important}
.bot-composer button{min-width:116px;border:0;border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--bot-accent) 82%,#fff),color-mix(in srgb,var(--bot-accent) 70%,#111));box-shadow:0 10px 28px rgba(var(--bot-accent-rgb),.22);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.bot-composer button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 34px rgba(var(--bot-accent-rgb),.34);filter:saturate(1.15)}
.bot-shell.is-sending .bot-composer{animation:botComposerSend .42s cubic-bezier(.2,.8,.2,1)}
@keyframes botPageIn{from{opacity:0;transform:translateY(12px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
@keyframes botMessageIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@keyframes botComposerSend{0%,100%{transform:none}45%{transform:translateY(2px) scale(.992)}}
@keyframes botDots{0%{clip-path:inset(0 100% 0 0)}100%{clip-path:inset(0 0 0 0)}}
@media(max-width:720px){.bot-heading h1,.bot-wordmark{font-size:54px}.bot-toolbar{align-items:stretch}.bot-message{width:92%}.bot-conversation{height:min(62vh,620px);min-height:420px;padding:14px}.bot-welcome{padding:24px 20px}.bot-composer{border-radius:17px}}
@media(prefers-reduced-motion:reduce){.bot-shell,.bot-shell::before,.bot-message,.bot-thinking::after,.bot-shell.is-sending .bot-composer{animation:none!important}}
