#ortho-pro-v6 { position: fixed; bottom: 25px; right: 25px; z-index: 99999; font-family: sans-serif; }
#ortho-bubble { width: 60px; height: 60px; background: #004a99; border-radius: 50%; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 24px; cursor: pointer; box-shadow: 0 5px 15px rgba(0,0,0,0.3); }
#ortho-box { height: 550px; background: #fff; position: absolute; bottom: 80px; right: 0; border-radius: 15px; display: flex; flex-direction: column; box-shadow: 0 10px 40px rgba(0,0,0,0.2); transition: 0.3s; transform-origin: bottom right; overflow: hidden; min-width: 300px; max-width: 350px; }
.ortho-closed { opacity: 0; transform: scale(0.8); pointer-events: none; }
.ortho-h { background: #004a99; color: #fff; padding: 15px; display: flex; justify-content: space-between; align-items: center; }
.ortho-actions button { background: none; border: none; color: #fff; cursor: pointer; font-size: 18px; margin-left: 10px; }
#ortho-m { flex: 1; padding: 15px; overflow-y: auto; background: #f9fbfc; display: flex; flex-direction: column; gap: 12px; }
.msg { padding: 12px 16px; border-radius: 12px; font-size: 14px; max-width: 90%; line-height: 1.6; }
.msg.u { background: #004a99; color: #fff; align-self: flex-end; border-bottom-right-radius: 2px; }
.msg.a { background: #fff; border: 1px solid #e1e8ed; align-self: flex-start; border-bottom-left-radius: 2px; }
/* Markdown Style Overrides */
.msg.a strong { font-weight: 700; color: #000; }
.msg.a ul { padding-left: 20px; margin: 5px 0; }
.msg.a li { margin-bottom: 5px; }
.msg.a p { margin-bottom: 10px; }
.ortho-f { padding: 12px; display: flex; gap: 10px; border-top: 1px solid #eee; }
#ortho-i { flex: 1; border: 1px solid #ddd; border-radius: 25px; padding: 10px 15px; outline: none; }
#ortho-s { background: #004a99; color: #fff; border: none; border-radius: 50%; width: 40px; height: 40px; cursor: pointer; }
#ortho-t { padding: 0 20px 10px; font-size: 11px; color: #888; font-style: italic; }
