
* { box-sizing: border-box; }

body {

  margin: 0;

  font-family: "Segoe UI", Arial, sans-serif;

  background: #0b0e14;

  color: #e6e6e6;

}

.layout {

  display: flex;

  height: 100vh;

  width: 100vw;

}

.sidebar {

  width: 320px;

  background: #121721;

  border-right: 1px solid #202737;

  padding: 20px;

  display: flex;

  flex-direction: column;

  gap: 16px;

}

.brand .logo {

  font-size: 22px;

  font-weight: 700;

}

.panel { display: flex; flex-direction: column; gap: 12px; }

.hidden { display: none; }

.muted { color: #9aa3b2; font-size: 0.9em; }

.field { margin: 6px 0; }

label { display: block; margin-bottom: 6px; }

input[type=text], input[type=password] {

  width: 100%;

  padding: 10px;

  border-radius: 8px;

  border: 1px solid #2a3140;

  background: #0f1218;

  color: #e6e6e6;

}

button {

  background: #4e8cff;

  border: 0;

  color: #fff;

  padding: 10px 14px;

  border-radius: 8px;

  cursor: pointer;

}

button.ghost { background: transparent; border: 1px solid #3a4252; }

.checkbox { display: flex; align-items: center; gap: 8px; }

.error { color: #ff6b6b; }

.section { display: flex; flex-direction: column; gap: 8px; }

.section h3 { margin: 8px 0 4px; font-size: 14px; text-transform: uppercase; letter-spacing: 0.08em; color: #aab4c6; }

.row { display: flex; gap: 8px; }

.row input { flex: 1; }

.output {

  background: #0f1218;

  border: 1px solid #2a3140;

  padding: 10px;

  height: 140px;

  overflow: auto;

  border-radius: 8px;

}

.pending .item { display: flex; gap: 8px; align-items: center; margin: 6px 0; }

.pending code { background: #0f1218; border: 1px solid #2a3140; padding: 4px 6px; border-radius: 6px; }

.chat-area {

  flex: 1;

  display: flex;

  flex-direction: column;

  height: 100vh;

  background: radial-gradient(1200px 800px at 20% -10%, #1b2333 0%, #0b0e14 60%);

}

.chat {

  flex: 1;

  padding: 24px;

  overflow: auto;

}

.chat .msg { margin: 8px 0; }

.chat .me { color: #8bd5ff; }

.chat .bot { color: #c6ffa3; }

.chat-input {

  display: flex;

  gap: 10px;

  padding: 16px 24px;

  border-top: 1px solid #1f2633;

  background: #0d1118;

}

@media (max-width: 900px) {

  .layout { flex-direction: column; }

  .sidebar { width: 100%; border-right: 0; border-bottom: 1px solid #202737; }

}

