body
{
   background-color: transparent;
   color: #000000;
   font-family: Arial;
   font-weight: normal;
   font-size: 15px;
   line-height: 1.1875;
   margin: 0;
   padding: 0;
}
a
{
   color: #254251;
   text-decoration: none;
}
a:visited
{
   color: #DC7215;
}
a:active
{
   color: #DC7215;
}
a:hover
{
   color: #DC7215;
   text-decoration: none;
}
.chat-container.no-translate{
    width:100vw;
    height:100vh;
    background:transparent;
    display:flex;
    flex-direction:column;
    font-family:'Montserrat','Segoe UI',Tahoma,Arial,sans-serif;
    color:#f0f0f0;
}
.chat-box{
    flex:1;
    overflow-y:auto;
    display:flex;
    flex-direction:column;
    gap:15px;
    padding:15px 0 10px;
    scrollbar-width:thin;
}
.chat-box::-webkit-scrollbar{width:8px}
.chat-box::-webkit-scrollbar-track{background:rgba(255,255,255,.05)}
.chat-box::-webkit-scrollbar-thumb{background:#2f2f2f;border-radius:4px}
.message{
    padding:12px 18px;
    border-radius:20px;
    max-width:80%;
    word-wrap:break-word;
    line-height:1.4;
    margin:0 20px;
    font-size:14px;
    animation:fadeIn .18s ease;
    white-space:pre-wrap;
}
@keyframes fadeIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.message.user{
    background:#007bff;
    color:#fff;
    align-self:flex-end;
    border-bottom-right-radius:5px;
}
.message.assistant{
    background:#444;
    color:#f0f0f0;
    align-self:flex-start;
    border-bottom-left-radius:5px;
}
.message.error{
    background:#7d1d1d;
    color:#fff;
    align-self:flex-start;
    border-bottom-left-radius:5px;
}
.message.loading{
    position:relative;
    color:#bbb;
    overflow:hidden;
}
.message.loading:after{
    content:'';
    position:absolute;inset:0;
    background:linear-gradient(110deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.07) 45%,rgba(255,255,255,0) 90%);
    animation:shimmer 1.2s infinite linear;
}
@keyframes shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(120%)}}
.chat-form{
    display:flex;
    padding:15px;
    gap:10px;
    border-top:1px solid rgba(255,255,255,.07);
}
.chat-input{
    flex-grow:1;
    border:1px solid #555;
    background:#333;
    color:#f0f0f0;
    border-radius:25px;
    padding:12px 20px;
    outline:none;
    font-size:14px;
    line-height:1.4;
    resize:none;
    max-height:200px;
}
.chat-input:focus{border-color:#003F6E}
.chat-input::placeholder{color:#aaaaaa}
.chat-send-btn{
    background:#003F6E;
    color:#fff;
    border:none;
    border-radius:50%;
    width:45px;height:45px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:.25s;
    flex-shrink:0;
}
.chat-send-btn:hover{background:#005691;transform:scale(1.05)}
.chat-send-btn:disabled{opacity:.55;cursor:default;transform:none}
#chatToolbar{
    position:absolute;
    left:10px;
    top:10px;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    z-index:10;
    font-family:inherit;
}
#chatToolbar button{
    background:#222;
    color:#eee;
    border:1px solid #444;
    border-radius:8px;
    font-size:11px;
    padding:5px 10px;
    cursor:pointer;
    transition:.2s;
}
#chatToolbar button:hover{background:#333}
.badge{
    display:inline-block;
    background:#2e8b57;
    color:#fff;
    padding:0 6px;
    border-radius:10px;
    font-size:10px;
    line-height:16px;
    font-weight:600;
    letter-spacing:.5px;
}
.status-line{
    position:absolute;
    right:14px;
    top:14px;
    font-size:11px;
    color:#8cc4ff;
    font-family:inherit;
    opacity:.9;
}
