:root {
  --bg: #07080c;
  --panel: #111318;
  --panel-2: #181b22;
  --panel-3: #1d212a;
  --border: #2d3340;
  --text: #f2f4f8;
  --muted: #9ca4b5;
  --accent: #ef2f2f;
  --accent-2: #901111;
  --danger: #ff6a6a;
  --success: #6bdf9d;
  --warning: #ffb55f;
  --shadow: 0 18px 70px rgba(0, 0, 0, 0.45);
}

* { box-sizing: border-box; }
html, body { height: 100%; }
body {
  margin: 0;
  background:
    radial-gradient(circle at top left, rgba(239,47,47,.12), transparent 22%),
    radial-gradient(circle at bottom right, rgba(239,47,47,.08), transparent 20%),
    linear-gradient(180deg, #090a0f 0%, #07080c 100%);
  color: var(--text);
  font-family: Inter, Arial, Helvetica, sans-serif;
}
a { color: #ff8c8c; text-decoration: none; }
button, input, textarea, select { font: inherit; }
input, textarea, select {
  width: 100%;
  background: #0d1016;
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 12px 14px;
}
textarea { min-height: 96px; resize: vertical; }
button {
  background: linear-gradient(180deg, #ff4141, #b51414);
  border: 0;
  border-radius: 14px;
  color: white;
  cursor: pointer;
  font-weight: 800;
  letter-spacing: .04em;
  padding: 12px 16px;
}
button:hover { filter: brightness(1.05); }
button:disabled { opacity: .5; cursor: not-allowed; }
.small-btn { padding: 10px 12px; font-size: .9rem; }
.small-btn.danger { background: linear-gradient(180deg, #ff6b6b, #b71f1f); }
.ghost-link { color: var(--muted); }
.muted { color: var(--muted); }
.small-muted { color: var(--muted); font-size: .88rem; }
.eyebrow {
  color: #ff8080;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-size: .76rem;
}

.server-banner {
  position: sticky;
  top: 0;
  z-index: 50;
  padding: 10px 16px;
  text-align: center;
  font-weight: 800;
  letter-spacing: .08em;
  background: linear-gradient(90deg, rgba(239,47,47,.16), rgba(239,47,47,.04));
  border-bottom: 1px solid rgba(239,47,47,.3);
}

.flash-wrap {
  position: fixed;
  top: 18px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  display: grid;
  gap: 10px;
}
.flash {
  background: rgba(17, 19, 24, .96);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 10px 14px;
  min-width: 260px;
  box-shadow: var(--shadow);
}
.flash-error { border-color: rgba(255, 106, 106, .45); }
.flash-success { border-color: rgba(107, 223, 157, .45); }

.auth-shell {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
}
.wolf-bg {
  background:
    radial-gradient(circle at top, rgba(239,47,47,.15), transparent 30%),
    linear-gradient(180deg, rgba(239,47,47,.05), transparent 30%),
    #07080c;
}
.auth-card {
  width: 100%;
  max-width: 440px;
  background: rgba(17, 19, 24, .94);
  border: 1px solid var(--border);
  border-radius: 26px;
  padding: 28px;
  box-shadow: var(--shadow);
}
.auth-card-wide { max-width: 560px; }
.hero-mark {
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: 18px;
  align-items: center;
}
.wolf-logo {
  width: 100%;
  height: auto;
  fill: #ff3232;
  filter: drop-shadow(0 0 18px rgba(239,47,47,.28));
}
.auth-form { display: grid; gap: 10px; margin-top: 20px; }
.bottom-copy { margin-top: 18px; }

.login-splash {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: none;
  place-items: center;
  background: radial-gradient(circle at center, rgba(239,47,47,.14), rgba(7,8,12,.98));
  backdrop-filter: blur(4px);
}
.login-splash.show { display: grid; animation: fadeSplash 2.8s forwards; }
.login-splash-card {
  text-align: center;
  padding: 30px 34px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(17, 19, 24, .85);
  box-shadow: var(--shadow);
}
.splash-wolf { width: 160px; margin: 0 auto 12px; display: block; }
.splash-title,
.splash-subtitle {
  text-transform: uppercase;
  font-family: "Arial Black", Impact, Haettenschweiler, sans-serif;
  letter-spacing: .18em;
}
.splash-title { font-size: clamp(1rem, 3vw, 1.65rem); }
.splash-subtitle { font-size: .75rem; color: #c9cfdc; margin-top: 8px; }
@keyframes fadeSplash {
  0% { opacity: 0; }
  14% { opacity: 1; }
  78% { opacity: 1; }
  100% { opacity: 0; visibility: hidden; }
}

.app-shell {
  display: grid;
  grid-template-columns: 320px 1fr;
  min-height: 100vh;
}
.sidebar {
  background: rgba(10, 12, 16, .94);
  border-right: 1px solid var(--border);
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.sidebar-top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}
.sidebar-links { display: flex; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }
.brand {
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #ffd4d4;
}
.storage-card,
.model-info-card,
.admin-card,
.chat-item,
.drop-zone,
.pending-chip,
.bubble,
.topbar,
.attachment-chip,
.history-item {
  background: rgba(17, 19, 24, .95);
  border: 1px solid var(--border);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.02);
}
.storage-card { padding: 14px; border-radius: 18px; }
.storage-row { margin: 8px 0 10px; }
.progress {
  height: 9px;
  border-radius: 999px;
  background: #0c0f14;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.04);
}
.progress span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #ff6666, #cc1919);
}
.new-chat-form { display: grid; gap: 10px; }
.model-select.compact { padding: 10px 12px; }
.chat-list { display: grid; gap: 10px; overflow: auto; }
.chat-item {
  border-radius: 18px;
  padding: 8px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: center;
}
.chat-item.active { border-color: rgba(239,47,47,.7); }
.chat-link { color: inherit; min-width: 0; }
.chat-title {
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.chat-meta { color: var(--muted); font-size: .84rem; margin-top: 4px; }
.delete-btn {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  background: transparent;
  border: 1px solid var(--border);
  color: var(--muted);
  padding: 0;
}
.delete-btn:hover { color: var(--danger); border-color: rgba(255,106,106,.5); }
.empty-note { color: var(--muted); padding: 12px 4px; }

.main-panel {
  min-height: 100vh;
  display: grid;
  grid-template-rows: auto 1fr auto;
}
.topbar {
  padding: 18px 22px;
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  border-bottom: 1px solid var(--border);
}
.topbar h1 { margin: 0 0 6px; }
.topbar-main { flex: 1; min-width: 0; }
.topbar-controls {
  display: grid;
  gap: 8px;
  width: min(360px, 100%);
}
.rename-form {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 8px;
}
.rename-input {
  background: #0d1016;
  border-radius: 14px;
  border: 1px solid var(--border);
  font-size: 1.1rem;
  font-weight: 800;
}
.model-info-card {
  border-radius: 18px;
  padding: 12px;
}
.ratings-row,
.cap-row,
.message-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.rating-badge,
.cap-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .04em;
}
.rating-badge.speed { background: rgba(107, 223, 157, .12); color: #94efbc; }
.rating-badge.smart { background: rgba(120, 170, 255, .12); color: #a9c3ff; }
.cap-badge.yes { background: rgba(239,47,47,.14); color: #ff8f8f; }
.cap-badge.no { background: rgba(255,255,255,.05); color: var(--muted); }

.messages {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  overflow: auto;
  max-height: calc(100vh - 300px);
}
.message {
  display: flex;
  width: 100%;
}
.message.user { justify-content: flex-start; }
.message.assistant { justify-content: flex-end; }
.bubble-wrap { max-width: min(800px, 86%); }
.message-role-label {
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 6px;
}
.message.assistant .message-role-label { text-align: right; }
.bubble {
  border-radius: 22px;
  padding: 16px;
}
.message.user .bubble {
  border-top-left-radius: 8px;
  background: linear-gradient(180deg, rgba(239,47,47,.16), rgba(239,47,47,.08));
}
.message.assistant .bubble {
  border-top-right-radius: 8px;
  background: rgba(20, 23, 30, .98);
}
.message-content {
  white-space: pre-wrap;
  line-height: 1.6;
}
.attachment-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.attachment-chip {
  border-radius: 14px;
  padding: 9px 12px;
  display: flex;
  gap: 10px;
  align-items: center;
  font-size: .9rem;
}
.attachment-chip small { color: var(--muted); }
.thinking-box {
  margin-top: 14px;
  border: 1px solid rgba(239,47,47,.25);
  border-radius: 16px;
  background: rgba(239,47,47,.05);
  padding: 10px 12px;
}
.thinking-box summary {
  cursor: pointer;
  font-weight: 800;
  color: #ff9a9a;
}
.thinking-box pre {
  margin: 10px 0 0;
  white-space: pre-wrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  color: #ffd8d8;
}
.message-stats {
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid rgba(255,255,255,.06);
  color: var(--muted);
  font-size: .82rem;
}
.thinking-live {
  margin-top: 14px;
  border: 1px dashed rgba(239,47,47,.3);
  border-radius: 16px;
  padding: 10px 12px;
  background: rgba(239,47,47,.04);
}
.thinking-live-title {
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: #ff8f8f;
  margin-bottom: 8px;
  font-weight: 900;
}
.thinking-live pre {
  margin: 0;
  white-space: pre-wrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.composer {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 16px;
  padding: 18px 22px 24px;
  border-top: 1px solid var(--border);
  background: rgba(10, 12, 16, .95);
}
.composer-main { display: grid; gap: 12px; }
.composer-actions { display: flex; align-items: flex-end; }
.drop-zone {
  border-radius: 18px;
  padding: 14px;
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
}
.drop-zone.dragover {
  border-color: rgba(239,47,47,.65);
  background: rgba(239,47,47,.08);
}
.upload-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(239,47,47,.12);
  color: #ffb3b3;
  cursor: pointer;
  font-weight: 800;
}
.pending-attachments {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.pending-chip {
  border-radius: 999px;
  padding: 8px 12px;
  color: #ffdcdc;
}
.pending-chip span { color: #ff9797; margin-left: 6px; }

.empty-state {
  display: grid;
  place-items: center;
  text-align: center;
  padding: 32px;
  color: var(--muted);
}
.hero-center { width: 180px; margin-bottom: 10px; }

.admin-main { grid-template-rows: auto 1fr; }
.admin-grid {
  padding: 24px;
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
}
.admin-card {
  border-radius: 22px;
  padding: 20px;
}
.admin-card.wide { grid-column: 1 / -1; }
.admin-card h2 { margin-top: 0; }
.stack-form { display: grid; gap: 12px; }
.checkbox-row { display: flex; gap: 8px; align-items: center; color: var(--muted); }
.checkbox-row input { width: auto; }
.history-list { display: grid; gap: 8px; margin-top: 14px; }
.history-item { padding: 10px 12px; border-radius: 14px; }
.admin-table-wrap { overflow: auto; }
.admin-table { width: 100%; border-collapse: collapse; }
.admin-table th, .admin-table td {
  padding: 10px 8px;
  border-bottom: 1px solid rgba(255,255,255,.06);
  text-align: left;
  vertical-align: top;
}
.admin-table input[type="number"] { min-width: 90px; }
.action-cell { display: flex; flex-wrap: wrap; gap: 8px; }

@media (max-width: 1024px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { border-right: 0; border-bottom: 1px solid var(--border); }
  .topbar { flex-direction: column; }
  .topbar-controls { width: 100%; }
  .composer { grid-template-columns: 1fr; }
  .composer-actions { justify-content: stretch; }
  .composer-actions button { width: 100%; }
  .admin-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .messages { max-height: none; }
  .bubble-wrap { max-width: 100%; }
  .rename-form { flex-direction: column; align-items: stretch; }
  .hero-mark { grid-template-columns: 1fr; text-align: center; }
  .wolf-logo { max-width: 120px; margin: 0 auto; }
  .drop-zone { flex-direction: column; align-items: flex-start; }
}

.admin-shell { min-height: 100vh; padding: 22px; }
.admin-topbar {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: 18px; gap: 12px;
}
.admin-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 18px;
}
.admin-card { border-radius: 24px; padding: 18px; }
.stack-form { display: grid; gap: 12px; }
.compact-gap { gap: 8px; }
.table-wrap { overflow: auto; margin-top: 12px; }
table { width: 100%; border-collapse: collapse; }
th, td { text-align: left; padding: 10px 8px; border-bottom: 1px solid rgba(255,255,255,.06); vertical-align: top; }
th { color: var(--muted); font-size: .86rem; }
.actions-cell { display: flex; gap: 8px; flex-wrap: wrap; }
.pill {
  display: inline-flex; align-items: center; border-radius: 999px; padding: 4px 8px;
  font-size: .78rem; border: 1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.03);
}
.main-pill { color: #ffd4d4; border-color: rgba(239,47,47,.24); }
.pill-green { color: #86f0b4; border-color: rgba(107,223,157,.28); }
.pill-red { color: #ff9797; border-color: rgba(255,106,106,.28); }
.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.message-content { white-space: pre-wrap; word-wrap: break-word; }
.message-status { color: var(--muted); font-size: .82rem; margin-top: 10px; }
@media (max-width: 900px) {
  .admin-shell { padding: 12px; }
  .two-col { grid-template-columns: 1fr; }
}

.role-strip {
  display: flex;
  gap: 8px;
  margin-top: 8px;
  flex-wrap: wrap;
}
.plan-pill {
  color: #ffd7a8;
  border-color: rgba(255,181,95,.28);
}
.crown-pill {
  color: #ffe38f;
  border-color: rgba(255,227,143,.35);
}
.storage-breakdown {
  margin-top: 10px;
}
.composer-options {
  display: grid;
  gap: 6px;
}
.locked-note {
  color: #ff9b9b;
  margin-top: 6px;
}
.inline-user-form {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) minmax(110px, 1fr) auto auto;
  gap: 8px;
  align-items: center;
}
.inline-user-form select,
.inline-user-form button {
  min-width: 0;
}
.compact-check {
  white-space: nowrap;
}
.metric-list {
  display: grid;
  gap: 8px;
  margin-bottom: 10px;
}
.wide-card {
  grid-column: 1 / -1;
}
.checkbox-row span {
  line-height: 1.35;
}
@media (max-width: 900px) {
  .inline-user-form {
    grid-template-columns: 1fr;
  }
}

.plans-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
  margin-bottom: 18px;
}
.plan-card.current-plan { border-color: rgba(239,47,47,.75); }
.plan-head { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
.plan-model-list { display:grid; gap:10px; margin-top:14px; }
.mini-model-card {
  padding: 12px;
  border-radius: 14px;
  background: rgba(255,255,255,.02);
  border: 1px solid rgba(255,255,255,.05);
}
.plan-edit-block {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.06);
  background: rgba(255,255,255,.02);
}
.attachment-preview-card,
.pending-attachment-card {
  border: 1px solid var(--border);
  border-radius: 16px;
  overflow: hidden;
  background: rgba(13, 16, 22, .94);
}
.attachment-preview-card { margin-top: 8px; }
.attachment-thumb,
.pending-attachment-thumb,
.attachment-page-image {
  display: block;
  width: 100%;
  max-height: 320px;
  object-fit: contain;
  background: #090c12;
}
.attachment-doc-body,
.pending-attachment-meta { padding: 12px; }
.attachment-doc-title,
.pending-name { font-weight: 800; margin-bottom: 6px; }
.attachment-doc-preview,
.pending-preview-text {
  color: var(--muted);
  font-size: .88rem;
  margin-top: 8px;
  white-space: pre-wrap;
  max-height: 6.3em;
  overflow: hidden;
}
.attachment-actions {
  display: flex;
  gap: 12px;
  padding: 10px 12px 12px;
}
.pending-attachments {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}
.pending-attachment-card {
  position: relative;
  min-height: 120px;
}
.pending-remove {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 32px;
  height: 32px;
  padding: 0;
  border-radius: 10px;
  background: rgba(7,8,12,.9);
  border: 1px solid rgba(255,255,255,.08);
}
.pending-doc-icon {
  display:grid;
  place-items:center;
  min-height: 120px;
  font-weight: 900;
  letter-spacing: .14em;
  color: #ff8080;
  background: linear-gradient(180deg, rgba(239,47,47,.08), rgba(239,47,47,.02));
}
.staff-room-layout { display:grid; grid-template-columns: minmax(0,1.4fr) minmax(300px,.8fr); gap:18px; }
.staff-messages { display:grid; gap:12px; max-height: 68vh; overflow:auto; }
.staff-message { padding: 12px; border-radius: 14px; background: rgba(255,255,255,.02); border:1px solid rgba(255,255,255,.05); }
.staff-message-head { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-bottom:8px; }
.staff-message-body { white-space: pre-wrap; }
.attachment-page-card { max-width: 980px; margin: 0 auto; }
.doc-preview-block {
  white-space: pre-wrap;
  background: #0b0f15;
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 16px;
  overflow: auto;
}
.password-reset-form { margin-top: 10px; }

.staff-chat-card { display: grid; gap: 18px; }
.staff-messages.chat-style {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-height: 68vh;
  overflow: auto;
  padding-right: 4px;
}
.staff-message-row { display: flex; width: 100%; }
.staff-message-row.own { justify-content: flex-start; }
.staff-message-row.other { justify-content: flex-end; }
.staff-bubble-wrap { max-width: min(760px, 88%); }
.staff-message-head.right { justify-content: flex-end; }
.staff-message-bubble {
  border-radius: 20px;
  padding: 14px 16px;
  white-space: pre-wrap;
  background: rgba(20, 23, 30, .98);
  border: 1px solid rgba(255,255,255,.06);
}
.staff-message-row.own .staff-message-bubble {
  border-top-left-radius: 8px;
  background: linear-gradient(180deg, rgba(239,47,47,.16), rgba(239,47,47,.08));
}
.staff-message-row.other .staff-message-bubble {
  border-top-right-radius: 8px;
}
.staff-compose-actions { display:flex; justify-content:space-between; gap:16px; align-items:center; }

@media (max-width: 960px) {
  .staff-compose-actions { flex-direction: column; align-items: stretch; }
  .staff-bubble-wrap { max-width: 100%; }
}
body[data-page="login"] .server-banner{position:static}
.global-job-banner{position:sticky;top:0;z-index:40;padding:8px 16px;background:rgba(255,140,140,.08);border-bottom:1px solid rgba(255,140,140,.16);color:#ffd4d4;font-size:.9rem}
.storage-breakdown{margin-top:8px;color:var(--muted);font-size:.82rem}
.chat-job-banner{margin:0 22px 10px;padding:10px 14px;border:1px solid rgba(255,140,140,.18);border-radius:14px;background:rgba(17,19,24,.92);color:var(--muted)}
.topbar-main{display:flex;flex-direction:column;gap:8px}.topbar-controls{display:flex;flex-direction:column;gap:8px;min-width:320px}.rename-form{display:flex;gap:8px}.rename-input{font-weight:800}
.messages{padding:18px 22px 8px;overflow:auto;display:grid;gap:16px}.message{display:flex}.message.user{justify-content:flex-start}.message.assistant{justify-content:flex-end}.bubble-wrap{max-width:min(900px,78vw)}.message-role-label{font-size:.72rem;color:var(--muted);font-weight:700;letter-spacing:.1em;margin-bottom:6px}.bubble{padding:14px 16px;border-radius:20px}.message.user .bubble{border-top-left-radius:8px}.message.assistant .bubble{border-top-right-radius:8px;background:rgba(21,24,31,.98)}.message-content{line-height:1.55}.message-content h1,.message-content h2,.message-content h3{margin:.4em 0 .35em}.message-content p{margin:.45em 0}.message-content ul{margin:.4em 0 .4em 1.2em}.message-content pre{overflow:auto;background:#0b0d12;border:1px solid var(--border);padding:10px;border-radius:12px}.message-content code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.attachment-stack{display:grid;gap:8px;margin-top:10px}.attachment-chip{padding:10px 12px;border-radius:14px;display:flex;justify-content:space-between;gap:10px;align-items:center}.attachment-chip.image img{max-width:240px;border-radius:12px}
.thinking-box{margin-top:10px;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#0c0f14}.thinking-box pre{white-space:pre-wrap;margin:8px 0 0}
.message-stats{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:.8rem}
.composer{padding:16px 22px 24px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end}.composer-main{display:grid;gap:10px}.drop-zone{border-radius:18px;padding:12px 14px;display:flex;justify-content:space-between;gap:12px;align-items:center}.upload-label{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:12px;border:1px solid var(--border);cursor:pointer;color:#ffd4d4}.pending-attachments{display:flex;gap:8px;flex-wrap:wrap}.pending-chip{display:flex;gap:8px;align-items:center;border-radius:999px;padding:8px 12px;background:#151921}.pending-thumb{width:36px;height:36px;object-fit:cover;border-radius:8px}.composer textarea{min-height:110px}
.locked-note{color:#ff9a9a}.ratings-row,.cap-row{display:flex;gap:8px;flex-wrap:wrap}.rating-badge,.cap-badge,.pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;border:1px solid var(--border);font-size:.8rem}.cap-badge.yes,.pill-green{border-color:rgba(107,223,157,.4);color:#b4ffd3}.cap-badge.no,.pill-red{border-color:rgba(255,106,106,.4);color:#ffc0c0}.crown-pill{border-color:rgba(255,215,0,.38);color:#ffeb8f}.main-pill{border-color:rgba(92,200,255,.35);color:#bfeeff}
.empty-state{display:grid;place-items:center;padding:24px;text-align:center}.hero-center{width:140px;margin-bottom:8px}
.admin-shell,.simple-shell{padding:20px;display:grid;gap:18px}.admin-topbar,.room-topbar{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.admin-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.admin-card{padding:16px;border-radius:22px;grid-column:span 4}.wide-card{grid-column:span 8}.full-card{grid-column:1/-1}.stack-form{display:grid;gap:10px}.compact-gap{gap:8px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.checkbox-row{display:flex;gap:10px;align-items:center}.checkbox-row input{width:auto}.table-wrap{overflow:auto}.admin-card table{width:100%;border-collapse:collapse}.admin-card th,.admin-card td{padding:10px 8px;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:top;text-align:left}.actions-cell{display:flex;gap:8px;flex-wrap:wrap}.inline-user-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.inline-user-form input,.inline-user-form select{width:auto;min-width:120px}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:16px}.chart-card{padding:12px;border-radius:18px;background:rgba(13,16,22,.85);border:1px solid var(--border)}
.room-shell{display:grid;grid-template-rows:auto 1fr auto;min-height:calc(100vh - 40px);padding:20px;gap:14px}.room-messages{display:grid;gap:14px;overflow:auto}.room-message{display:flex}.room-message.mine{justify-content:flex-start}.room-message.other{justify-content:flex-end}.room-bubble{max-width:min(860px,78vw);padding:14px 16px;border-radius:18px;background:rgba(17,19,24,.95);border:1px solid var(--border)}.room-message.mine .room-bubble{border-top-left-radius:8px}.room-message.other .room-bubble{border-top-right-radius:8px}.room-form{display:grid;grid-template-columns:1fr auto;gap:10px}.room-form textarea{min-height:90px}.attachment-preview{margin-top:8px}.attachment-preview img{max-width:360px;border-radius:14px;border:1px solid var(--border)}
.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.plan-card{padding:18px;border-radius:22px;background:rgba(17,19,24,.95);border:1px solid var(--border)}.plan-card.current{border-color:rgba(239,47,47,.6)}.plan-card ul{padding-left:18px}.studio-grid{display:grid;grid-template-columns:360px 1fr;gap:18px}.studio-card{padding:14px;border-radius:18px;background:rgba(17,19,24,.95);border:1px solid var(--border);display:grid;gap:10px}.studio-card .preview{max-width:100%;border-radius:16px;border:1px solid var(--border)}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.node-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.node-mini{padding:14px;border-radius:16px;background:rgba(13,16,22,.85);border:1px solid var(--border)}
@media (max-width: 1100px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.admin-grid{grid-template-columns:1fr}.admin-card,.wide-card,.full-card{grid-column:1/-1}.studio-grid{grid-template-columns:1fr}.topbar,.composer,.room-form{grid-template-columns:1fr}.topbar{display:grid}}

/* v8.1 visible upgrade */
.auth-card-premium{background:linear-gradient(180deg,rgba(15,17,24,.96),rgba(11,13,18,.98));border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 70px rgba(0,0,0,.35)}
.hero-stack{align-items:flex-start;gap:18px}.hero-stack h1{margin:0;font-size:2rem}.auth-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0 18px}.status-chip{display:grid;gap:6px;padding:12px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025)}.status-chip.good{border-color:rgba(114,236,157,.28);background:rgba(114,236,157,.06)}.status-chip.warn{border-color:rgba(255,178,82,.35);background:rgba(255,178,82,.08)}.status-chip.neutral{border-color:rgba(255,255,255,.08)}.status-chip strong{font-size:.95rem}.auth-actions-row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:12px}.secondary-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);color:#fff;text-decoration:none}
.admin-shell-premium .admin-hero-grid,.creative-hero-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.metric-card{min-height:132px}.metric-card h2{margin:4px 0 0;font-size:1.6rem}.admin-grid-v8{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.admin-grid-v8 .admin-card{grid-column:span 4}.admin-grid-v8 .wide-card{grid-column:span 8}.admin-grid-v8 .full-card{grid-column:1/-1}.sticky-topbar{position:sticky;top:12px;z-index:20;background:rgba(9,11,16,.78);backdrop-filter:blur(10px);padding:12px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.05)}.plan-edit-block{display:grid;gap:8px;padding:12px;border-radius:16px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02)}.secure-note{padding:10px 12px;border-radius:14px;background:rgba(255,96,96,.06);border:1px solid rgba(255,96,96,.16)}.node-mini-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.feature-card{min-height:220px}.feature-card.large-card{grid-column:span 6}.creative-hero-grid .feature-card:nth-child(2),.creative-hero-grid .feature-card:nth-child(3){grid-column:span 3}.image-card-v8 .prompt-preview{font-weight:600;line-height:1.45}.wrap-row{row-gap:8px}.chip-wrap{display:flex;flex-wrap:wrap;gap:8px}.studio-card .pill{background:rgba(255,255,255,.02)}
.sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;padding:8px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:#fff;cursor:pointer}.sidebar.collapsed{width:88px;min-width:88px}.sidebar.collapsed .sidebar-links,.sidebar.collapsed .storage-card,.sidebar.collapsed .new-chat-form,.sidebar.collapsed .chat-list,.sidebar.collapsed .small-muted,.sidebar.collapsed .storage-breakdown{display:none}.sidebar.collapsed .brand{font-size:1rem}
@media (max-width: 1100px){.admin-shell-premium .admin-hero-grid,.creative-hero-grid,.admin-grid-v8{grid-template-columns:1fr}.admin-grid-v8 .admin-card,.admin-grid-v8 .wide-card,.admin-grid-v8 .full-card,.creative-hero-grid .feature-card,.creative-hero-grid .feature-card.large-card{grid-column:1/-1}.auth-status-grid,.three-col{grid-template-columns:1fr}}

.composer-input-wrap{position:relative}.composer-activity{display:flex;align-items:center;gap:.5rem;margin-top:.45rem;color:#cfd4df;font-size:.9rem}.tiny-spinner{width:12px;height:12px;border:2px solid rgba(255,255,255,.25);border-top-color:#ff4545;border-radius:50%;display:inline-block;animation:spin .8s linear infinite}.node-mini .small-muted{word-break:break-all}@keyframes spin{to{transform:rotate(360deg)}}

a[data-nav-chat].job-busy{position:relative;padding-right:24px;}
.nav-spinner{display:inline-block;width:10px;height:10px;border:2px solid currentColor;border-top-color:transparent;border-radius:999px;margin-left:8px;vertical-align:middle;animation:manexspin 0.8s linear infinite;}
@keyframes manexspin{to{transform:rotate(360deg)}}

/* KOVAT ai v8.5.6 live community chat sizing */
.live-chat-shell .room-messages,
.live-lounge-messages {
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow-y: auto;
  scroll-behavior: smooth;
}
.live-chat-shell .room-message {
  display: flex;
  width: 100%;
}
.live-chat-shell .room-message.mine { justify-content: flex-end; }
.live-chat-shell .room-message.other { justify-content: flex-start; }
.live-chat-shell .room-bubble {
  display: inline-block;
  width: auto;
  min-width: 0;
  max-width: min(72%, 780px);
  padding: 10px 14px;
  border-radius: 18px;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.live-chat-shell .room-message.mine .room-bubble {
  border-bottom-right-radius: 6px;
}
.live-chat-shell .room-message.other .room-bubble {
  border-bottom-left-radius: 6px;
}
.live-chat-shell .message-content {
  white-space: normal;
  line-height: 1.45;
}
.live-chat-shell .room-meta {
  margin-bottom: 5px;
  font-size: 0.76rem;
}
.live-room-form textarea {
  min-height: 44px;
  max-height: 150px;
}
@media (max-width: 760px) {
  .live-chat-shell .room-bubble { max-width: 90%; }
}

/* KOVAT ai v8.5.9 chat/media polish */
.room-message{display:flex;margin:8px 0;}.room-message.mine{justify-content:flex-end;}.room-message.other{justify-content:flex-start;}.room-bubble{display:inline-block;width:fit-content;max-width:min(760px,78%);padding:10px 12px;border-radius:16px;}.room-message.mine .room-bubble{border-bottom-right-radius:6px;}.room-message.other .room-bubble{border-bottom-left-radius:6px;}.message .bubble{width:fit-content;max-width:min(860px,86%);}.message.assistant .bubble{max-width:min(920px,92%);}.media-delete-image-btn,.media-delete-video-btn{margin-left:6px;margin-top:6px;}

/* KOVAT ai v8.6.2 user-facing cleanup */
.image-card-v8 .media-delete-image-btn + .media-delete-image-btn,
.studio-card .media-delete-image-btn + .media-delete-image-btn,
.studio-card form + .media-delete-image-btn + .media-delete-image-btn { display: none !important; }


/* KOVAT ai v8.6.3 creation switch controls */
.creation-switch-panel{margin:18px 0;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(20,20,24,.55)}
.switch-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.switch-panel-head h3{margin:0 0 4px}.creation-mode-note{font-size:.82rem;opacity:.75;text-align:right}.creation-switch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.manex-switch-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(0,0,0,.22);cursor:pointer}.manex-switch-row span{display:flex;flex-direction:column;gap:3px}.manex-switch-row small{opacity:.68}.manex-switch-row input{position:absolute;opacity:0;pointer-events:none}.manex-switch-row i{position:relative;display:inline-block;flex:0 0 auto;width:54px;height:30px;border-radius:999px;background:#3b3b44;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:.18s ease}.manex-switch-row i:before{content:"";position:absolute;top:4px;left:4px;width:22px;height:22px;border-radius:50%;background:#fff;transition:.18s ease;box-shadow:0 4px 12px rgba(0,0,0,.35)}.manex-switch-row input:checked+i{background:linear-gradient(135deg,#e11d48,#ff4d4d)}.manex-switch-row input:checked+i:before{transform:translateX(24px)}.danger-switch input:checked+i{background:linear-gradient(135deg,#991b1b,#dc2626)}.compact-video-limit-row{margin-top:12px}

/* MANEX_V865_PRIVATE_CHAT_STYLES */
.private-chat-grid{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:18px;align-items:start}.private-room-list{display:flex;flex-direction:column;gap:14px}.private-room-card-list{display:flex;flex-direction:column;gap:8px}.private-room-card{display:block;text-decoration:none;color:inherit;border:1px solid rgba(255,255,255,.10);border-radius:16px;padding:12px;background:rgba(255,255,255,.035)}.private-room-card.active,.private-room-card:hover{border-color:rgba(255,60,60,.45);background:rgba(255,60,60,.08)}.private-room-card span,.private-room-card small{display:block;color:var(--muted,#aaa);margin-top:4px}.private-room-panel{min-height:70vh;display:flex;flex-direction:column}.private-room-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.10);padding-bottom:12px;margin-bottom:12px}.private-messages{flex:1;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:6px 2px 14px;max-height:62vh}.private-message{max-width:min(720px,82%);align-self:flex-start}.private-message.mine{align-self:flex-end;text-align:right}.private-message-name{font-size:.78rem;color:var(--muted,#aaa);margin:0 8px 4px}.private-message-bubble{display:inline-block;text-align:left;border-radius:18px;padding:10px 13px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);white-space:pre-wrap;word-break:break-word}.private-message.mine .private-message-bubble{background:rgba(215,38,38,.18);border-color:rgba(255,60,60,.22)}.private-message small{display:block;color:var(--muted,#888);font-size:.68rem;margin:3px 8px}.private-composer{display:flex;gap:10px;padding-top:12px;border-top:1px solid rgba(255,255,255,.10)}.private-composer textarea{flex:1;min-height:52px;max-height:160px;resize:vertical}@media(max-width:850px){.private-chat-grid{grid-template-columns:1fr}.private-message{max-width:94%}}

/* MANEX_V866_CHAT_PRIVATE_MEDIA_FIX */
.private-input-stack{display:flex;flex-direction:column;gap:4px;flex:1}.upload-private-label{display:flex;align-items:center;justify-content:center;cursor:pointer}.role-badge{font-size:.72rem;border-radius:999px;padding:2px 7px;margin-right:4px;border:1px solid rgba(255,255,255,.16);white-space:nowrap}.role-badge.owner{background:rgba(255,205,80,.14);color:#ffd36a}.role-badge.admin{background:rgba(110,170,255,.14);color:#9ec8ff}.private-attachments{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}.private-attachments img{max-width:220px;max-height:180px;border-radius:14px;border:1px solid rgba(255,255,255,.14);object-fit:cover}.private-message-bubble,.room-bubble{width:fit-content;max-width:min(720px,82vw)}.room-message.mine .room-bubble{margin-left:auto}.room-message.other .room-bubble{margin-right:auto}


/* KOVAT ai rebrand */
.kovatai-wordmark{
  display:inline-flex;
  align-items:baseline;
  gap:.18em;
  font-family:inherit;
  line-height:1;
  letter-spacing:.02em;
  white-space:nowrap;
}
.kovatai-main{
  font-size:1.16em;
  font-weight:850;
  color:inherit;
  letter-spacing:.04em;
}
.kovatai-ai{
  font-size:.66em;
  font-weight:700;
  color:rgba(180,185,195,.78);
  letter-spacing:.01em;
  text-transform:none;
}
.brand-logo .kovatai-main,
.logo .kovatai-main,
.sidebar-brand .kovatai-main,
.login-brand .kovatai-main,
.hero-brand .kovatai-main{
  font-size:1.34em;
}
.brand-logo .kovatai-ai,
.logo .kovatai-ai,
.sidebar-brand .kovatai-ai,
.login-brand .kovatai-ai,
.hero-brand .kovatai-ai{
  font-size:.7em;
}
