/* LearnMe Ops — фирменные цвета: Deep Teal #053846, Ink #022430,
   Bright Cyan #4DFCFC (акценты на тёмном), Teal #00B8B0 (на светлом),
   Amber #FFB84D (CTA), Mist #EAF4F2, Grey Blue #9DB4BB */
* { box-sizing: border-box; }
body { margin: 0; background: #EAF4F2; color: #0E4653;
  font: 16px/1.55 'Aeonik', 'Helvetica Neue', Helvetica, Arial, sans-serif; }
nav { display: flex; align-items: center; gap: 18px; padding: 14px 22px;
  background: #053846; color: #9DB4BB; }
nav a { color: #EAF4F2; text-decoration: none; font-weight: 500; }
nav a:hover { color: #4DFCFC; }
nav .who { margin-left: auto; font-size: 14px; }
nav .who a { color: #9DB4BB; text-decoration: underline; }
.logo { font-weight: 700; color: #fff; letter-spacing: -0.5px; }
.logo b { color: #4DFCFC; } .logo em { font-style: normal; color: #FFB84D; font-weight: 500; }
.logo.big { font-size: 28px; display: block; margin-bottom: 18px; }
main { max-width: 980px; margin: 0 auto; padding: 26px 18px 60px; }
h1 { color: #053846; letter-spacing: -0.5px; }
.card { background: #fff; border-radius: 16px; padding: 20px 22px; margin: 0 0 18px; }
.card.muted p, .muted { color: #5A7580; font-size: 15px; }
table { border-collapse: collapse; width: 100%; }
th, td { text-align: left; padding: 8px 10px; border-bottom: 1px solid #EAF4F2; font-size: 15px; }
th { color: #5A7580; font-weight: 600; }
.ok { color: #00B8B0; font-weight: 600; } .bad { color: #C0392B; font-weight: 600; }
.err { color: #C0392B; }
/* login */
.login { max-width: 360px; margin: 12vh auto; text-align: center; }
.login .logo { color: #053846; } .login .logo b { color: #00B8B0; }
input, textarea { width: 100%; padding: 12px 14px; margin: 6px 0; border: 1px solid #C6DAD6;
  border-radius: 10px; font: inherit; background: #fff; }
button { background: #FFB84D; color: #022430; border: 0; border-radius: 999px;
  padding: 12px 30px; font: inherit; font-weight: 700; cursor: pointer; margin-top: 8px; }
button:hover { filter: brightness(1.05); }
/* chat */
.thread { min-height: 300px; max-height: 55vh; overflow-y: auto; }
.msg { margin: 0 0 14px; padding: 12px 16px; border-radius: 14px; max-width: 85%; white-space: pre-wrap; }
.msg.user { background: #053846; color: #EAF4F2; margin-left: auto; }
.msg.ai { background: #EAF4F2; }
.msg.wait { color: #5A7580; font-style: italic; }
.chatform { display: flex; gap: 10px; align-items: flex-end; }
.chatform textarea { flex: 1; resize: vertical; }
/* knowledge */
.cols { display: flex; gap: 18px; align-items: flex-start; }
.menu { display: flex; flex-direction: column; gap: 6px; min-width: 230px; }
.menu a { padding: 9px 14px; border-radius: 10px; text-decoration: none; color: #0E4653; background: #fff; }
.menu a.act { background: #053846; color: #fff; }
.doc { flex: 1; } .doc h1 { font-size: 24px; }
@media (max-width: 760px) { .cols { flex-direction: column; } nav { flex-wrap: wrap; } }
