@font-face {
  font-family: "Vazirmatn";
  src: url("fonts/Vazirmatn-Variable.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root {
  color-scheme: dark;
  --bg: #111113;
  --panel: #18181b;
  --panel-2: #202024;
  --glass: rgba(36, 36, 42, 0.72);
  --glass-line: rgba(255, 255, 255, 0.1);
  --text: #f2f2f4;
  --muted: rgba(242, 242, 244, 0.62);
  --line: rgba(255, 255, 255, 0.1);
  --accent: #8b5cf6;
  --accent-dark: #6d28d9;
  --accent-warm: #facc15;
  --danger: #ff8a80;
  --shadow: 0 24px 70px rgba(0, 0, 0, 0.38);
  --sidebar-width: 318px;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  min-height: 100vh;
  font-family: "Vazirmatn", Tahoma, Arial, sans-serif;
  background:
    radial-gradient(circle at top right, rgba(139, 92, 246, 0.18), transparent 28%),
    radial-gradient(circle at bottom left, rgba(250, 204, 21, 0.1), transparent 30%),
    var(--bg);
  color: var(--text);
}

button, textarea { font: inherit; }
button { -webkit-tap-highlight-color: transparent; }

.app-shell {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.enamad-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28);
}

.enamad-badge a,
.enamad-badge img {
  display: block;
}

.enamad-badge img {
  width: 72px;
  height: auto;
}

.chat-panel {
  width: min(1180px, 100%);
  height: min(800px, calc(100vh - 48px));
  min-height: 540px;
  display: grid;
  grid-template-columns: 1fr;
  position: relative;
  background: rgba(24, 24, 27, 0.96);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  overflow: hidden;
}

.chat-sidebar {
  position: absolute;
  inset-block: 0;
  right: 0;
  z-index: 20;
  width: var(--sidebar-width);
  transform: translateX(calc(100% + 22px));
  opacity: 0;
  pointer-events: none;
  display: grid;
  grid-template-rows: auto auto auto 1fr;
  gap: 14px;
  padding: 16px;
  border-left: 1px solid var(--glass-line);
  background: linear-gradient(180deg, rgba(48, 48, 56, 0.78), rgba(26, 26, 30, 0.72));
  backdrop-filter: blur(18px) saturate(132%);
  -webkit-backdrop-filter: blur(18px) saturate(132%);
  box-shadow: -22px 0 55px rgba(0, 0, 0, 0.38);
  transition: transform 240ms ease, opacity 180ms ease;
}

.chat-panel.sidebar-open .chat-sidebar {
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
}

.sidebar-scrim {
  position: absolute;
  inset: 0;
  z-index: 10;
  border: 0;
  background: rgba(0, 0, 0, 0.38);
  opacity: 0;
  pointer-events: none;
  transition: opacity 180ms ease;
}

.chat-panel.sidebar-open .sidebar-scrim {
  opacity: 0;
  pointer-events: none;
}

.sidebar-head {
  display: grid;
  grid-template-columns: 1fr 38px;
  align-items: center;
  gap: 10px;
}

.sidebar-brand {
  min-width: 0;
  height: 40px;
  display: flex;
  align-items: center;
  color: var(--text);
  font-size: 18px;
  font-weight: 800;
}

.sidebar-close,
.icon-button {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
  color: var(--text);
  cursor: pointer;
}

.sidebar-close {
  width: 38px;
  height: 38px;
  font-size: 22px;
  line-height: 1;
}

.new-chat-button {
  width: 100%;
  min-height: 46px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(250, 204, 21, 0.28);
  border-radius: 8px;
  padding: 0 12px;
  background: rgba(250, 204, 21, 0.12);
  color: var(--text);
  cursor: pointer;
  font-weight: 800;
}

.line-icon,
.tool-icon {
  width: 26px;
  height: 26px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  color: var(--accent-warm);
  line-height: 1;
}

.tool-list {
  display: grid;
  gap: 6px;
}

.tool-item,
.chat-tab {
  width: 100%;
  min-height: 42px;
  display: grid;
  align-items: center;
  gap: 10px;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 8px 10px;
  background: transparent;
  color: rgba(242, 242, 244, 0.84);
  cursor: pointer;
  text-align: right;
}

.tool-item {
  grid-template-columns: 26px 1fr;
}

.tool-item:hover,
.chat-tab:hover {
  background: rgba(255, 255, 255, 0.065);
  border-color: rgba(255, 255, 255, 0.08);
}

.history-panel {
  min-height: 0;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 10px;
  padding-top: 4px;
}

.history-title,
.history-group-title {
  color: rgba(242, 242, 244, 0.56);
  font-size: 12px;
  font-weight: 800;
}

.chat-history {
  min-height: 0;
  overflow-y: auto;
  display: grid;
  align-content: start;
  gap: 14px;
  padding-bottom: 12px;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, 0.22) transparent;
}

.history-group {
  display: grid;
  gap: 6px;
}

.chat-tab {
  grid-template-columns: 5px 1fr 10px;
}

.chat-tab.active {
  background: rgba(255, 255, 255, 0.105);
  border-color: rgba(255, 255, 255, 0.1);
}

.chat-tab-marker {
  width: 5px;
  height: 24px;
  border-radius: 999px;
  background: transparent;
}

.chat-tab.active .chat-tab-marker { background: var(--accent); }

.chat-tab-title {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.unread-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: transparent;
}

.chat-tab.unread .unread-dot {
  background: #38bdf8;
  box-shadow: 0 0 0 4px rgba(56, 189, 248, 0.12);
}


.chat-main {
  min-width: 0;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

.topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  border-bottom: 1px solid var(--line);
  background: rgba(17, 17, 19, 0.84);
}

.topbar-title {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
}

.icon-button {
  width: 42px;
  height: 42px;
  font-size: 21px;
  line-height: 1;
}

.icon-button:hover,
.sidebar-close:hover:hover,
.composer #sendButton:hover,
.attach-button:hover {
  background: rgba(139, 92, 246, 0.18);
  border-color: rgba(139, 92, 246, 0.34);
}

.topbar h1 {
  margin: 0 0 4px;
  font-size: 20px;
  line-height: 1.4;
}

.topbar p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

.message-area {
  position: relative;
  min-height: 0;
  background: #151517;
}

.messages {
  height: 100%;
  overflow-y: auto;
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.messages::-webkit-scrollbar,
.chat-history::-webkit-scrollbar { width: 10px; height: 10px; }
.messages::-webkit-scrollbar-thumb,
.chat-history::-webkit-scrollbar-thumb {
  border: 3px solid transparent;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.22);
  background-clip: content-box;
}

.empty-state {
  margin: auto;
  max-width: 420px;
  text-align: center;
  color: var(--muted);
  line-height: 1.9;
}

.message {
  max-width: min(78%, 720px);
  padding: 12px 14px;
  border-radius: 8px;
  line-height: 1.85;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  border: 1px solid transparent;
}

.message.user {
  align-self: flex-start;
  background: var(--accent);
  color: #ffffff;
}

.message.assistant {
  align-self: flex-end;
  background: rgba(255, 255, 255, 0.075);
  border-color: rgba(255, 255, 255, 0.08);
  color: var(--text);
}

.message.error {
  align-self: stretch;
  max-width: 100%;
  background: rgba(255, 138, 128, 0.12);
  border-color: rgba(255, 138, 128, 0.3);
  color: var(--danger);
}

.composer {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  padding: 16px;
  border-top: 1px solid var(--line);
  background: rgba(17, 17, 19, 0.84);
}

.mode-bar {
  padding: 9px 16px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  background: rgba(17, 17, 19, 0.9);
  font-size: 12px;
}

.attachment-list {
  min-height: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 16px;
  background: rgba(17, 17, 19, 0.9);
}

.attachment-chip {
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 999px;
  padding: 5px 9px;
  color: var(--muted);
  background: rgba(255, 255, 255, 0.06);
  font-size: 12px;
}

.attach-button {
  width: 46px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
  color: var(--text);
  cursor: pointer;
  font-size: 20px;
}

.tool-item.active {
  background: rgba(139, 92, 246, 0.18);
  border-color: rgba(139, 92, 246, 0.24);
}

.generated-image {
  display: block;
  width: min(320px, 100%);
  margin-top: 10px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.12);
}

.composer textarea {
  width: 100%;
  max-height: 150px;
  resize: none;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px 14px;
  line-height: 1.7;
  outline: none;
  background: rgba(255, 255, 255, 0.065);
  color: var(--text);
}

.composer textarea:focus {
  border-color: rgba(139, 92, 246, 0.55);
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.18);
}

.composer #sendButton {
  min-width: 92px;
  border: 1px solid rgba(250, 204, 21, 0.32);
  border-radius: 8px;
  background: rgba(250, 204, 21, 0.14);
  color: var(--text);
  cursor: pointer;
  font-weight: 800;
}

.composer #sendButton:disabled,
.new-chat-button:disabled {
  cursor: wait;
  opacity: 0.72;
}

.new-chat-button:focus-visible,
.tool-item:focus-visible,
.chat-tab:focus-visible,
.icon-button:focus-visible,
.sidebar-close:focus-visible,
.composer button:focus-visible {
  outline: 3px solid rgba(250, 204, 21, 0.45);
  outline-offset: 2px;
}

@media (max-width: 640px) {
  .app-shell { padding: 0; }
  .chat-panel {
    width: 100%;
    height: 100vh;
    min-height: 100vh;
    border: 0;
    border-radius: 0;
  }
  .chat-panel.sidebar-open .sidebar-scrim {
    opacity: 1;
    pointer-events: auto;
  }
  .chat-sidebar { width: min(88vw, var(--sidebar-width)); }
  .messages { padding: 16px; }
  .message { max-width: 92%; }
  .composer { grid-template-columns: auto 1fr; }
  .composer button { height: 46px; }
  .composer #sendButton { grid-column: 1 / -1; }
  .enamad-badge img {
    width: 58px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .chat-sidebar,
  .sidebar-scrim {
    transition: none;
  }
}

.workspace {
  min-height: 0;
  display: grid;
  grid-template-columns: 0 1fr 0;
  background: #151517;
  transition: grid-template-columns 220ms ease;
}

.chat-panel.code-mode .workspace {
  grid-template-columns: minmax(230px, 0.95fr) minmax(320px, 1.08fr) minmax(230px, 0.95fr);
}

.code-pane,
.preview-pane {
  min-width: 0;
  min-height: 0;
  display: none;
  grid-template-rows: auto 1fr;
  background: rgba(13, 13, 16, 0.92);
  border-color: var(--line);
}

.chat-panel.code-mode .code-pane,
.chat-panel.code-mode .preview-pane {
  display: grid;
}

.code-pane {
  border-left: 1px solid var(--line);
}

.preview-pane {
  position: relative;
  border-right: 1px solid var(--line);
}

.pane-header {
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 12px;
  border-bottom: 1px solid var(--line);
  background: rgba(17, 17, 19, 0.9);
  font-size: 13px;
  font-weight: 800;
}

.pane-status {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.code-output {
  min-height: 0;
  margin: 0;
  padding: 14px;
  overflow: auto;
  direction: ltr;
  text-align: left;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  color: #d7f7dc;
  background: #0f1115;
  font: 13px/1.7 Consolas, Monaco, "Courier New", monospace;
}

.preview-frame {
  width: 100%;
  height: 100%;
  min-height: 0;
  border: 0;
  background: #ffffff;
}

.preview-empty {
  position: absolute;
  inset: 46px 0 0;
  display: grid;
  place-items: center;
  padding: 22px;
  text-align: center;
  line-height: 1.9;
  color: rgba(17, 17, 19, 0.72);
  background: #f7f7f8;
}

.preview-pane.has-preview .preview-empty {
  display: none;
}

.chat-panel.code-mode .message {
  max-width: 94%;
}

@media (max-width: 980px) {
  .chat-panel.code-mode .workspace {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(240px, 1fr) minmax(240px, 1fr) minmax(240px, 1fr);
  }
  .chat-panel.code-mode .code-pane,
  .chat-panel.code-mode .preview-pane {
    border: 0;
    border-top: 1px solid var(--line);
  }
}

.workspace {
  direction: ltr;
}

.code-pane,
.message-area,
.preview-pane {
  direction: rtl;
}

.message-area {
  grid-column: 1 / -1;
}

.chat-panel.code-mode .code-pane {
  grid-column: 1;
}

.chat-panel.code-mode .message-area {
  grid-column: 2;
}

.chat-panel.code-mode .preview-pane {
  grid-column: 3;
}

@media (max-width: 980px) {
  .chat-panel.code-mode .code-pane,
  .chat-panel.code-mode .message-area,
  .chat-panel.code-mode .preview-pane {
    grid-column: 1;
  }
}

.code-output {
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, 0.22) transparent;
}

.code-output::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

.code-output::-webkit-scrollbar-thumb {
  border: 3px solid transparent;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.22);
  background-clip: content-box;
}

.messages {
  scrollbar-width: auto;
  scrollbar-color: rgba(255, 255, 255, 0.34) rgba(255, 255, 255, 0.08);
}

.messages::-webkit-scrollbar {
  width: 14px;
  height: 14px;
}

.messages::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.08);
  border-radius: 999px;
}

.messages::-webkit-scrollbar-thumb {
  min-height: 44px;
  border: 3px solid rgba(21, 21, 23, 1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.34);
  background-clip: padding-box;
}

.messages::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.52);
  background-clip: padding-box;
}

.chat-main {
  min-height: 0;
  grid-template-rows: auto minmax(0, 1fr) auto auto auto;
}

.workspace,
.message-area,
.messages {
  min-height: 0;
}

.messages {
  overflow-y: scroll;
}

.chat-history-item {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32px 32px;
  align-items: center;
  gap: 6px;
}

.chat-history-item .chat-tab {
  min-width: 0;
}

.chat-action-button {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  color: rgba(242, 242, 244, 0.78);
  cursor: pointer;
  line-height: 1;
}

.chat-action-button:hover {
  background: rgba(139, 92, 246, 0.18);
  border-color: rgba(139, 92, 246, 0.32);
  color: var(--text);
}

.chat-action-menu {
  position: relative;
}

.chat-menu-popover {
  position: absolute;
  left: 0;
  top: calc(100% + 6px);
  z-index: 30;
  min-width: 138px;
  display: none;
  padding: 6px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 8px;
  background: rgba(31, 31, 36, 0.98);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.32);
}

.chat-history-item.menu-open .chat-menu-popover {
  display: block;
}

.chat-menu-popover button {
  width: 100%;
  border: 0;
  border-radius: 6px;
  padding: 8px 10px;
  background: transparent;
  color: var(--text);
  cursor: pointer;
  text-align: right;
  font-size: 12px;
}

.chat-menu-popover button:hover {
  background: rgba(255, 255, 255, 0.08);
}

.auth-gate {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: safe center;
  gap: 12px;
  padding: 20px;
  overflow-y: auto;
  background:
    radial-gradient(circle at top right, rgba(139, 92, 246, 0.24), transparent 30%),
    radial-gradient(circle at bottom left, rgba(250, 204, 21, 0.16), transparent 32%),
    rgba(17, 17, 19, 0.98);
}

.auth-gate.hidden {
  display: none;
}

.auth-card {
  width: min(420px, 100%);
  flex: 0 0 auto;
  display: grid;
  gap: 14px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(24, 24, 27, 0.96);
  box-shadow: var(--shadow);
}

.enamad-badge-auth {
  flex: 0 0 auto;
}

.auth-brand {
  color: var(--accent-warm);
  font-size: 22px;
  font-weight: 900;
}

.auth-card h1,
.auth-card p {
  margin: 0;
}

.auth-card p,
.auth-message {
  color: var(--muted);
  line-height: 1.8;
}

.auth-card label {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.auth-card input {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px 14px;
  outline: none;
  background: rgba(255, 255, 255, 0.065);
  color: var(--text);
  direction: ltr;
  text-align: left;
}

.auth-card input:focus {
  border-color: rgba(139, 92, 246, 0.55);
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.18);
}

.auth-card button {
  min-height: 44px;
  border: 1px solid rgba(250, 204, 21, 0.32);
  border-radius: 8px;
  background: rgba(250, 204, 21, 0.14);
  color: var(--text);
  cursor: pointer;
  font-weight: 900;
}

.auth-card button:disabled {
  cursor: wait;
  opacity: 0.7;
}

.auth-secondary {
  border-color: var(--line) !important;
  background: rgba(255, 255, 255, 0.06) !important;
}

.auth-message.error {
  color: var(--danger);
}

.topbar-actions {
  display: flex;
  gap: 8px;
}

.subscription-button {
  min-height: 42px;
  border: 1px solid rgba(250, 204, 21, 0.32);
  border-radius: 8px;
  padding: 0 12px;
  background: rgba(250, 204, 21, 0.14);
  color: var(--text);
  cursor: pointer;
  font-weight: 900;
}

.subscription-modal {
  position: fixed;
  inset: 0;
  z-index: 90;
  display: grid;
  place-items: center;
  padding: 20px;
  overflow-y: auto;
  background: rgba(0, 0, 0, 0.62);
}

.subscription-modal.hidden {
  display: none;
}

.subscription-card {
  width: min(860px, 100%);
  max-height: min(760px, calc(100vh - 40px));
  overflow-y: auto;
  display: grid;
  gap: 18px;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(24, 24, 27, 0.98);
  box-shadow: var(--shadow);
}

.subscription-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.subscription-head h2,
.subscription-head p,
.plan-card h3,
.plan-card p {
  margin: 0;
}

.subscription-head p,
.plan-card p,
.subscription-message {
  color: var(--muted);
  line-height: 1.8;
}

.plans-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}

.plan-card {
  display: grid;
  gap: 12px;
  align-content: start;
  min-height: 190px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.055);
}

.plan-card.featured {
  border-color: rgba(250, 204, 21, 0.36);
  background: rgba(250, 204, 21, 0.1);
}

.plan-card.disabled {
  opacity: 0.55;
}

.plan-card button {
  align-self: end;
  min-height: 40px;
  border: 1px solid rgba(250, 204, 21, 0.32);
  border-radius: 8px;
  background: rgba(250, 204, 21, 0.14);
  color: var(--text);
  cursor: pointer;
  font-weight: 900;
}

.plan-card button:disabled {
  cursor: not-allowed;
  opacity: 0.72;
}

.composer.limited {
  opacity: 0.62;
}

.composer.limited textarea {
  cursor: not-allowed;
  background: rgba(255, 255, 255, 0.035);
  color: var(--muted);
}

.tool-item.locked {
  opacity: 0.52;
}

.tool-item.locked .tool-icon::after {
  content: "🔒";
  position: absolute;
  transform: translate(-11px, -10px);
  font-size: 10px;
}

.auth-top-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.auth-menu-button,
.auth-support-button {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  flex: 0 0 38px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
  color: var(--text);
  cursor: pointer;
  text-decoration: none;
}
.auth-menu-button svg,
.auth-support-button svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.auth-menu-popover {
  position: absolute;
  top: 72px;
  right: 24px;
  z-index: 102;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(31, 31, 36, 0.98);
}

.support-modal,
.feedback-modal,
.admin-modal {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: grid;
  place-items: center;
  padding: 20px;
  overflow-y: auto;
  background: rgba(0, 0, 0, 0.64);
}

.support-modal.hidden,
.feedback-modal.hidden,
.admin-modal.hidden,
.admin-panel.hidden,
.admin-tab.hidden {
  display: none;
}

.support-card {
  width: min(720px, 100%);
  max-height: min(780px, calc(100vh - 40px));
  overflow-y: auto;
  display: grid;
  gap: 14px;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(24, 24, 27, 0.98);
  box-shadow: var(--shadow);
}

.support-card label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.support-card input,
.support-card textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 11px 12px;
  outline: none;
  background: rgba(255, 255, 255, 0.065);
  color: var(--text);
}

.support-card button:not(.sidebar-close),
.auth-menu-popover button {
  min-height: 38px;
  border: 1px solid rgba(250, 204, 21, 0.32);
  border-radius: 8px;
  padding: 0 12px;
  background: rgba(250, 204, 21, 0.14);
  color: var(--text);
  cursor: pointer;
  font-weight: 800;
}

.simple-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.simple-tabs button.active {
  background: rgba(139, 92, 246, 0.24) !important;
  border-color: rgba(139, 92, 246, 0.42) !important;
}

.ticket-row,
.plan-row {
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.gift-code-form,
.gift-admin-form {
  display: grid;
  gap: 10px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.045);
}
.gift-code-form>button,.gift-admin-form>button[type="submit"]{color:#171020;border:0;background:linear-gradient(135deg,#f7d86b,#e7ae28);box-shadow:0 8px 24px rgba(231,174,40,.18);font-weight:850}.message-processing .message-body{display:flex;align-items:center;gap:5px}.message-processing .message-body i{width:7px;height:7px;border-radius:50%;background:#f5c84b;animation:kiThinking 1.05s ease-in-out infinite}.message-processing .message-body i:nth-of-type(2){animation-delay:.14s}.message-processing .message-body i:nth-of-type(3){animation-delay:.28s}@keyframes kiThinking{0%,70%,100%{transform:translateY(0);opacity:.35}35%{transform:translateY(-5px);opacity:1}}.ki-confirm-backdrop{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:rgba(5,4,10,.72);backdrop-filter:blur(10px)}.ki-confirm-card{width:min(100%,420px);padding:24px;border:1px solid rgba(196,161,255,.2);border-radius:20px;background:linear-gradient(145deg,#181323,#100d18);box-shadow:0 24px 80px rgba(0,0,0,.55)}.ki-confirm-card h3{margin:0 0 10px;color:#fff;font-size:19px}.ki-confirm-card p{margin:0 0 22px;color:#c9bfd2;line-height:1.9}.ki-confirm-card>div{display:flex;gap:9px}.ki-confirm-card button{min-width:105px;min-height:42px;border:0;border-radius:11px;color:#1b1320;background:linear-gradient(135deg,#f7d86b,#e7ae28);font-weight:850;cursor:pointer}.ki-confirm-card button.secondary{color:#ddd4e5;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.055)}

.gift-code-form label,
.gift-admin-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.gift-code-form input,
.gift-admin-form input {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 12px;
  outline: none;
  background: rgba(255, 255, 255, 0.065);
  color: var(--text);
}

.gift-code-summary,
.gift-list {
  color: var(--muted);
  font-size: 13px;
}

.gift-row {
  display: grid;
  gap: 6px;
  margin-top: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.045);
}

.inline-check {
  grid-template-columns: auto 1fr;
  align-items: center;
}

.plan-month-panel {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.05);
}

.plan-month-panel.hidden {
  display: none;
}

.month-options {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.month-options button {
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: linear-gradient(135deg, var(--accent), var(--accent-dark));
  color: white;
  cursor: pointer;
  font-weight: 900;
}

.gift-admin-form select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 12px;
  outline: none;
  background: rgba(255, 255, 255, 0.065);
  color: var(--text);
}

.auth-tabs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin: 10px 0 14px;
}

.auth-tabs button {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px 8px;
  background: rgba(255, 255, 255, 0.06);
  color: var(--muted);
  cursor: pointer;
  font-size: 13px;
  font-weight: 800;
}

.auth-tabs button.active {
  color: white;
  border-color: rgba(139, 92, 246, 0.6);
  background: rgba(139, 92, 246, 0.24);
}

#loginFields,
#smsFields,
#profileFields {
  display: grid;
  gap: 12px;
}

#loginFields[hidden],
#smsFields[hidden],
#profileFields[hidden] {
  display: none;
}


@media (max-width: 760px) {
  .chat-panel.code-mode .workspace {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: minmax(320px, 1fr) minmax(220px, 42vh) minmax(220px, 42vh);
    overflow-y: auto;
  }

  .chat-panel.code-mode .message-area {
    grid-column: 1;
    grid-row: 1;
    min-height: 320px;
  }

  .chat-panel.code-mode .code-pane {
    grid-column: 1;
    grid-row: 2;
    min-height: 220px;
    border: 0;
    border-top: 1px solid var(--line);
  }

  .chat-panel.code-mode .preview-pane {
    grid-column: 1;
    grid-row: 3;
    min-height: 220px;
    border: 0;
    border-top: 1px solid var(--line);
  }

  .chat-panel.code-mode .messages {
    max-height: none;
    overflow-y: auto;
  }

  .code-output,
  .preview-frame {
    min-height: 180px;
  }

  .pane-header {
    position: sticky;
    top: 0;
    z-index: 2;
  }
}

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

.project-files-button {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 6px 9px;
  color: var(--text);
  background: rgba(255, 255, 255, 0.06);
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
}

.project-code-layout {
  min-height: 0;
  display: grid;
  grid-template-columns: 0 1fr;
  position: relative;
}

.project-code-layout:has(.project-files-menu.open) {
  grid-template-columns: 150px 1fr;
}

.project-files-menu {
  min-width: 0;
  overflow: hidden;
  border-left: 1px solid transparent;
  background: #111217;
  transition: width 180ms ease, border-color 180ms ease;
}

.project-files-menu.open {
  border-left-color: var(--line);
}

.project-files-title {
  padding: 10px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  border-bottom: 1px solid var(--line);
}

.project-files-list {
  display: grid;
  gap: 4px;
  padding: 8px;
}

.project-files-list button {
  width: 100%;
  border: 0;
  border-radius: 8px;
  padding: 8px;
  color: var(--text);
  background: transparent;
  cursor: pointer;
  direction: ltr;
  text-align: left;
  font: 12px Consolas, Monaco, "Courier New", monospace;
}

.project-files-list button.active,
.project-files-list button:hover {
  background: rgba(139, 92, 246, 0.18);
}

.project-files-empty {
  padding: 8px;
  color: var(--muted);
  font-size: 12px;
}

@media (max-width: 760px) {
  .project-code-layout,
  .project-code-layout:has(.project-files-menu.open) {
    grid-template-columns: 1fr;
  }

  .project-files-menu {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 5;
    width: 0;
    box-shadow: -18px 0 32px rgba(0, 0, 0, 0.28);
  }

  .project-files-menu.open {
    width: min(190px, 76vw);
  }
}

.message-image-block {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.message-image-block .generated-image {
  margin-top: 0;
}

.image-download-link {
  width: fit-content;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 999px;
  padding: 6px 10px;
  color: var(--text);
  background: rgba(139, 92, 246, 0.18);
  text-decoration: none;
  font-size: 12px;
  font-weight: 800;
}

.image-download-link:hover {
  border-color: rgba(139, 92, 246, 0.45);
  background: rgba(139, 92, 246, 0.28);
}


/* Admin dashboard v2 — KeyChat theme */
.admin-modal { padding: 0; background: rgba(7, 7, 15, .86); backdrop-filter: blur(9px); }
.admin-login-card { width: min(440px, calc(100% - 32px)); display: grid; gap: 18px; padding: 24px; border: 1px solid rgba(168,85,247,.28); border-radius: 18px; background: linear-gradient(145deg,#1c172a,#12121a); box-shadow: 0 28px 80px rgba(0,0,0,.55); }
.admin-login-card.hidden { display: none; }
.admin-login-card h2,.admin-login-card p { margin: 0; }
.admin-login-card p { margin-top: 5px; color: var(--muted); }
.admin-login-form,.admin-login-form > div { display: grid; gap: 14px; }
.admin-login-form label,.admin-panel label { display: grid; gap: 7px; color: #c4b5d7; font-size: 13px; font-weight: 800; }
.admin-login-form input,.admin-panel input,.admin-panel textarea,.admin-panel select { width: 100%; border: 1px solid rgba(168,85,247,.24); border-radius: 10px; padding: 11px 12px; outline: none; color: #f7f3ff; background: rgba(8,8,16,.62); }
.admin-login-form input:focus,.admin-panel input:focus,.admin-panel textarea:focus,.admin-panel select:focus { border-color: #a855f7; box-shadow: 0 0 0 3px rgba(168,85,247,.13); }
.admin-login-form button,.admin-panel button { border: 1px solid rgba(250,204,21,.3); border-radius: 10px; padding: 10px 14px; color: #fff; background: linear-gradient(135deg,rgba(139,92,246,.95),rgba(109,40,217,.95)); cursor: pointer; font: inherit; font-weight: 850; }
.admin-panel { position: fixed; inset: 0; z-index: 201; overflow: hidden; color: #f5f0ff; background: radial-gradient(circle at 10% 5%,rgba(139,92,246,.18),transparent 28rem),linear-gradient(135deg,#0e0c16,#171225 55%,#100f1a); }
.admin-sidebar { position: fixed; inset: 0 0 0 auto; z-index: 4; width: 264px; display: flex; flex-direction: column; border-left: 1px solid rgba(168,85,247,.2); background: rgba(20,16,31,.96); box-shadow: -22px 0 55px rgba(0,0,0,.28); }
.admin-brand { display: flex; align-items: center; gap: 12px; padding: 22px 18px; border-bottom: 1px solid rgba(168,85,247,.16); }
.admin-brand-mark { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 15px; color: #17101f; background: linear-gradient(135deg,#facc15,#a855f7); box-shadow: 0 0 25px rgba(168,85,247,.25); font-size: 22px; font-weight: 950; }
.admin-brand strong,.admin-brand small { display: block; }
.admin-brand strong { color: #facc15; }
.admin-brand small,.admin-profile small { margin-top: 3px; color: #a99db8; font-size: 11px; }
.admin-nav { flex: 1; display: grid; align-content: start; gap: 5px; padding: 16px 11px; overflow-y: auto; }
.admin-nav button { min-height: 47px; display: flex; align-items: center; gap: 12px; border: 0; padding: 0 13px; color: #cfc5dd; background: transparent; text-align: right; box-shadow: none; }
.admin-nav button > span { width: 27px; color: #a855f7; font-size: 18px; text-align: center; }
.admin-nav button b { min-width: 23px; margin-right: auto; padding: 2px 7px; border-radius: 20px; color: #120c1b; background: #facc15; font-size: 11px; text-align: center; }
.admin-nav button:hover,.admin-nav button.active { color: #fff; background: linear-gradient(90deg,rgba(168,85,247,.2),rgba(250,204,21,.06)); box-shadow: inset -3px 0 #facc15; transform: none; }
.admin-profile { margin: 11px; padding: 11px; display: flex; align-items: center; gap: 10px; border: 1px solid rgba(168,85,247,.17); border-radius: 13px; background: rgba(139,92,246,.08); }
.admin-avatar { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: #160f20; background: #facc15; font-weight: 950; }
.admin-profile strong,.admin-profile small { display: block; }
.admin-profile i { width: 8px; height: 8px; margin-right: auto; border-radius: 50%; background: #4ade80; box-shadow: 0 0 9px #4ade80; }
.admin-main { height: 100vh; margin-right: 264px; overflow-y: auto; }
.admin-header { position: sticky; top: 0; z-index: 3; min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 22px; border-bottom: 1px solid rgba(168,85,247,.17); background: rgba(18,14,29,.78); backdrop-filter: blur(18px); }
.admin-header h1,.admin-header p { margin: 0; }
.admin-header h1 { color: #facc15; font-size: clamp(20px,3vw,27px); }
.admin-header p { margin-top: 5px; color: #a99db8; font-size: 13px; }
.admin-header-actions { display: flex; gap: 8px; }
.admin-header-actions button { min-height: 40px; padding: 7px 12px; background: rgba(139,92,246,.14); }
.admin-header-actions #adminPanelClose { border-color: rgba(248,113,113,.3); color: #fecaca; background: rgba(239,68,68,.1); }
.admin-content { width: min(100%,1500px); margin-inline: auto; padding: 20px 22px 40px; }
.admin-stat-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-bottom: 18px; }
.admin-stat-grid.compact { margin-bottom: 20px; }
.admin-stat-card,.admin-card { position: relative; overflow: hidden; border: 1px solid rgba(168,85,247,.18); border-radius: 17px; background: linear-gradient(145deg,rgba(31,24,46,.96),rgba(18,17,29,.94)); box-shadow: 0 15px 40px rgba(0,0,0,.16); }
.admin-stat-card { min-height: 132px; display: grid; align-content: center; gap: 7px; padding: 18px; }
.admin-stat-card::after { content:""; position:absolute; width:90px; height:90px; left:-28px; top:-30px; border-radius:50%; background:radial-gradient(circle,rgba(250,204,21,.12),transparent 70%); }
.admin-stat-card span,.admin-stat-card small { color: #a99db8; }
.admin-stat-card strong { color: #facc15; font-size: clamp(25px,4vw,34px); }
.admin-stat-card small { font-size: 12px; }
.admin-card { padding: 19px; }
.admin-dashboard-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-bottom: 18px; }
.admin-span-2 { grid-column: span 2; }
.admin-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 17px; }
.admin-section-head h2,.admin-section-head p { margin: 0; }
.admin-section-head h2 { color: #facc15; font-size: 17px; }
.admin-section-head p { margin-top: 5px; color: #a99db8; font-size: 12px; }
.admin-usage-bars { display: grid; gap: 16px; padding: 8px 0; }
.admin-usage-row { display: grid; grid-template-columns: 95px 1fr 55px; align-items: center; gap: 12px; font-size: 13px; }
.admin-usage-row > div { height: 10px; overflow: hidden; border-radius: 20px; background: rgba(255,255,255,.07); }
.admin-usage-row i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#7c3aed,#facc15); }
.admin-usage-row strong { color: #facc15; text-align: left; }
.admin-quick-list { display: grid; gap: 10px; }
.admin-quick-list > div { display: flex; justify-content: space-between; gap: 10px; padding: 13px; border: 1px solid rgba(168,85,247,.13); border-radius: 11px; background: rgba(139,92,246,.06); }
.admin-quick-list span { color: #b8adca; }
.admin-quick-list strong { color: #facc15; }
.admin-table-wrap { overflow-x: auto; }
.admin-table { width: 100%; min-width: 680px; border-collapse: collapse; }
.admin-table th,.admin-table td { padding: 12px; border-bottom: 1px solid rgba(168,85,247,.11); text-align: right; font-size: 13px; }
.admin-table th { color: #a99db8; font-weight: 700; }
.admin-table td { color: #ded6ea; }
.admin-badge { display: inline-flex; padding: 4px 9px; border-radius: 20px; font-size: 11px; white-space: nowrap; }
.admin-badge.info { color:#93c5fd;background:rgba(59,130,246,.13); }.admin-badge.success { color:#86efac;background:rgba(34,197,94,.12); }.admin-badge.warning { color:#fde047;background:rgba(250,204,21,.1); }.admin-badge.danger { color:#fca5a5;background:rgba(239,68,68,.12); }
.admin-empty { padding: 35px 15px; color: #a99db8; text-align: center; }
.admin-ticket-list,.admin-error-list { display: grid; gap: 13px; }
.admin-ticket,.admin-error { display: grid; gap: 12px; padding: 16px; border: 1px solid rgba(168,85,247,.15); border-radius: 14px; background: rgba(9,8,16,.34); }
.admin-ticket-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.admin-ticket-head strong,.admin-ticket-head span,.admin-error strong,.admin-error small { display: block; }
.admin-ticket-head strong { color: #fff; }.admin-ticket-head div > span,.admin-error small { margin-top:5px;color:#a99db8;font-size:11px; }
.admin-ticket > p,.admin-ticket-reply p,.admin-error > p { margin: 0; color: #d7cfe2; line-height: 1.9; }
.admin-ticket-reply { padding: 12px; border-right: 3px solid #facc15; border-radius: 9px; background: rgba(250,204,21,.06); }
.admin-ticket-reply strong { color: #facc15; }.admin-ticket-reply small { color:#a99db8; }
.admin-ticket textarea { min-height: 90px; resize: vertical; }
.admin-ticket-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.admin-ticket-actions .secondary { color: #d8cae8; background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.12); }
.admin-error > div { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; }.admin-error > div small { width:100%; }
.admin-error pre { margin:0; max-height:180px; overflow:auto; direction:ltr; text-align:left; white-space:pre-wrap; padding:11px; border-radius:9px; color:#f5c2c7; background:#0b0911; font:12px Consolas,monospace; }
.admin-error button { width: fit-content; }
.admin-plan-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.admin-plan-card { display: grid; gap: 10px; }.admin-plan-card > span { color:#a99db8; }.admin-plan-card > strong { color:#facc15;font-size:22px; }.admin-plan-card small { color:#b8adca; }
.admin-panel .gift-admin-form { grid-template-columns: repeat(2,minmax(0,1fr)); background: rgba(8,8,16,.25); }
.admin-panel .gift-admin-form > button,.admin-panel .gift-admin-form > .auth-message,.admin-panel .gift-admin-form .inline-check { grid-column: 1 / -1; }
.admin-panel .gift-row { border-color:rgba(168,85,247,.16);background:rgba(139,92,246,.05); }
.admin-mobile-menu { display: none; position: fixed; top: 15px; right: 14px; z-index: 7; width: 44px; height: 44px; padding:0 !important; border-radius:50% !important; }
.admin-overlay { display:none; position:fixed;inset:0;z-index:3;border:0!important;border-radius:0!important;background:rgba(0,0,0,.62)!important; }
@media (max-width: 1050px) { .admin-stat-grid,.admin-plan-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.admin-dashboard-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.admin-span-2 { grid-column:span 1; } }
@media (max-width: 820px) { .admin-sidebar { transform:translateX(105%);transition:transform .25s; }.admin-panel.menu-open .admin-sidebar { transform:none; }.admin-panel.menu-open .admin-overlay { display:block; }.admin-main { margin-right:0; }.admin-mobile-menu { display:grid;place-items:center; }.admin-header { padding-right:70px; }.admin-content { padding:16px 12px 32px; } }
@media (max-width: 600px) { .admin-header { align-items:flex-start; }.admin-header p { display:none; }.admin-header-actions { flex-direction:column; }.admin-header-actions button { min-height:34px;padding:5px 8px;font-size:11px; }.admin-stat-grid,.admin-plan-grid,.admin-dashboard-grid { grid-template-columns:1fr; }.admin-stat-card { min-height:105px; }.admin-card { padding:14px; }.admin-panel .gift-admin-form { grid-template-columns:1fr; }.admin-usage-row { grid-template-columns:75px 1fr 42px; }.admin-ticket-head { flex-direction:column; }.admin-ticket-actions button,.admin-error button { width:100%; }.admin-sidebar { width:min(86vw,280px); } }

/* KeyChat visual polish v3 */
:root {
  --bg: #09080f;
  --panel: #14111d;
  --panel-2: #1c1728;
  --glass: rgba(25, 20, 38, .72);
  --glass-line: rgba(196, 161, 255, .14);
  --text: #f8f5ff;
  --muted: rgba(229, 220, 242, .64);
  --line: rgba(196, 161, 255, .12);
  --accent: #9b5cf6;
  --accent-dark: #7134d3;
  --accent-warm: #f5c84b;
  --danger: #ff8f9c;
  --shadow: 0 30px 90px rgba(0, 0, 0, .48);
}
html { background: var(--bg); }
body { overflow-x: hidden; background: radial-gradient(circle at 88% -5%,rgba(139,92,246,.24),transparent 30rem),radial-gradient(circle at -5% 105%,rgba(245,200,75,.11),transparent 30rem),linear-gradient(145deg,#08070d,#100c19 55%,#09080f); }
body::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.23; background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px); background-size:38px 38px; mask-image:linear-gradient(to bottom,black,transparent 82%); }
svg { width: 1em; height: 1em; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
button { transition: transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease,color .2s ease; }
button:not(:disabled):active { transform: scale(.97); }
.app-shell { padding: clamp(12px,2vw,26px); }
.chat-panel { width:min(1380px,100%); height:min(890px,calc(100vh - 40px)); border-radius:24px; border-color:rgba(196,161,255,.16); background:rgba(17,14,25,.9); box-shadow:0 36px 110px rgba(0,0,0,.56),0 0 0 1px rgba(255,255,255,.025) inset; backdrop-filter:blur(20px); }
.chat-panel::before { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; border-radius:inherit; background:linear-gradient(135deg,rgba(255,255,255,.035),transparent 25%,transparent 72%,rgba(139,92,246,.035)); }
.chat-main,.chat-sidebar,.sidebar-scrim { z-index:1; }
.chat-sidebar { width:300px; gap:16px; padding:18px; border-left-color:rgba(196,161,255,.14); background:linear-gradient(180deg,rgba(31,24,45,.96),rgba(14,12,22,.96)); box-shadow:-28px 0 75px rgba(0,0,0,.46); }
.sidebar-head { grid-template-columns:1fr 40px; }
.sidebar-brand { height:auto; gap:10px; }
.sidebar-brand > span:last-child,.auth-brand > span:last-child { min-width:0; }
.sidebar-brand strong,.sidebar-brand small,.auth-brand strong,.auth-brand small { display:block; }
.sidebar-brand strong { font-size:17px; }.sidebar-brand small { margin-top:2px;color:var(--muted);font-size:10px;font-weight:600; }
.mini-brand { width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border-radius:13px;color:#160f20;background:linear-gradient(135deg,var(--accent-warm),#d9a82c);box-shadow:0 8px 25px rgba(245,200,75,.14);font-weight:950; }
.sidebar-close,.icon-button { border-radius:12px; background:rgba(255,255,255,.045); }
.sidebar-close:hover,.icon-button:hover,.attach-button:hover { transform:translateY(-2px);background:rgba(155,92,246,.14);box-shadow:0 8px 20px rgba(0,0,0,.18); }
.new-chat-button { min-height:50px;border-radius:14px;border-color:rgba(245,200,75,.27);background:linear-gradient(135deg,rgba(245,200,75,.15),rgba(139,92,246,.1));box-shadow:0 10px 28px rgba(0,0,0,.12); }
.new-chat-button:hover { transform:translateY(-2px);border-color:rgba(245,200,75,.48);box-shadow:0 13px 30px rgba(0,0,0,.2); }
.line-icon,.tool-icon { width:30px;height:30px;border-radius:10px;border-color:rgba(196,161,255,.14);color:#c7a5ff;background:rgba(155,92,246,.07);font-size:16px; }
.line-icon { color:var(--accent-warm);background:rgba(245,200,75,.08); }
.tool-item,.chat-tab { border-radius:12px; }
.tool-item { min-height:47px;grid-template-columns:30px 1fr;padding:8px 9px; }
.tool-item:hover,.tool-item.active { transform:translateX(-2px);background:linear-gradient(90deg,rgba(155,92,246,.16),rgba(245,200,75,.035));border-color:rgba(155,92,246,.18); }
.tool-item.active .tool-icon { color:var(--accent-warm);border-color:rgba(245,200,75,.28);background:rgba(245,200,75,.08);box-shadow:0 0 18px rgba(245,200,75,.08); }
.history-panel { border-top:1px solid rgba(196,161,255,.09);padding-top:14px; }
.history-title,.history-group-title { color:rgba(229,220,242,.47);letter-spacing:.02em; }
.chat-tab.active { background:linear-gradient(90deg,rgba(155,92,246,.15),rgba(255,255,255,.025));border-color:rgba(155,92,246,.17); }
.topbar { min-height:78px;padding:15px 20px;border-bottom-color:rgba(196,161,255,.11);background:rgba(14,11,21,.73);backdrop-filter:blur(20px) saturate(130%); }
.topbar-title { gap:13px; }.topbar h1 { display:flex;align-items:center;gap:10px;font-size:21px; }.topbar p { color:rgba(229,220,242,.52); }
.online-pill { display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border:1px solid rgba(74,222,128,.18);border-radius:20px;color:#86efac;background:rgba(34,197,94,.07);font-size:10px;font-weight:700; }
.online-pill i { width:6px;height:6px;border-radius:50%;background:#4ade80;box-shadow:0 0 8px #4ade80; }
.subscription-button { border-radius:12px;background:linear-gradient(135deg,rgba(245,200,75,.17),rgba(155,92,246,.1)); }
.subscription-button:hover { transform:translateY(-2px);border-color:rgba(245,200,75,.48);box-shadow:0 9px 22px rgba(0,0,0,.18); }
.message-area,.workspace { background:radial-gradient(circle at 50% 20%,rgba(155,92,246,.035),transparent 24rem),rgba(10,9,15,.58); }
.messages { padding:clamp(18px,3vw,34px);gap:17px;scroll-behavior:smooth; }
.message { position:relative;max-width:min(76%,760px);padding:14px 17px;border-radius:18px;line-height:1.95;box-shadow:0 10px 28px rgba(0,0,0,.11);animation:message-in .3s ease both; }
.message.user { border-bottom-left-radius:5px;background:linear-gradient(135deg,#9254eb,#7035cb);box-shadow:0 13px 30px rgba(94,44,177,.2); }
.message.assistant { border-bottom-right-radius:5px;border-color:rgba(196,161,255,.12);background:linear-gradient(145deg,rgba(38,30,52,.9),rgba(23,20,32,.9)); }
.message.error { border-radius:14px; }
@keyframes message-in { from { opacity:0;transform:translateY(8px) scale(.99); } }
.empty-state { width:min(680px,100%);max-width:none;display:grid;justify-items:center;gap:13px;padding:32px 20px;margin:auto;color:var(--muted); }
.empty-state h2,.empty-state p { margin:0; }.empty-state h2 { color:#fff;font-size:clamp(23px,4vw,34px);letter-spacing:-.03em; }.empty-state p { max-width:570px;font-size:14px;line-height:2;text-align:center; }
.empty-logo { position:relative;width:82px;height:82px;display:grid;place-items:center;margin-bottom:5px;border:1px solid rgba(196,161,255,.2);border-radius:26px;background:linear-gradient(145deg,rgba(155,92,246,.23),rgba(245,200,75,.1));box-shadow:0 24px 65px rgba(65,29,119,.3),0 0 50px rgba(155,92,246,.12) inset; }
.empty-logo b { color:#fff;font-size:34px;z-index:1; }.empty-logo i { position:absolute;width:14px;height:14px;top:8px;left:8px;border-radius:50%;background:var(--accent-warm);box-shadow:0 0 16px rgba(245,200,75,.7); }
.empty-features { display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:5px; }.empty-features span { padding:7px 11px;border:1px solid rgba(196,161,255,.11);border-radius:20px;color:rgba(229,220,242,.65);background:rgba(255,255,255,.025);font-size:11px; }
.mode-bar { padding:8px 18px;border-color:rgba(196,161,255,.09);background:rgba(12,10,18,.88); }
.attachment-list { background:rgba(12,10,18,.88); }
.composer { gap:10px;padding:13px 15px 15px;border-top-color:rgba(196,161,255,.1);background:rgba(12,10,18,.9); }
.composer textarea { min-height:50px;border-radius:15px;padding:13px 16px;border-color:rgba(196,161,255,.14);background:rgba(255,255,255,.045);box-shadow:0 8px 25px rgba(0,0,0,.1) inset; }
.composer textarea:focus { border-color:rgba(155,92,246,.62);background:rgba(255,255,255,.06);box-shadow:0 0 0 4px rgba(155,92,246,.11); }
.attach-button { width:50px;border-radius:15px;border-color:rgba(196,161,255,.14);background:rgba(255,255,255,.045);font-size:21px; }
.composer #sendButton { min-width:96px;border-radius:15px;border:0;color:#1a1124;background:linear-gradient(135deg,#f7d15d,#dcae2d);box-shadow:0 10px 25px rgba(245,200,75,.16); }
.composer #sendButton:hover { transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 14px 30px rgba(245,200,75,.23); }
.generated-image { border-radius:15px;border-color:rgba(196,161,255,.15);box-shadow:0 14px 36px rgba(0,0,0,.25); }
.image-download-link { border-radius:10px;background:linear-gradient(135deg,rgba(155,92,246,.17),rgba(245,200,75,.07)); }
.auth-gate { gap:16px;padding:28px 18px;background:radial-gradient(circle at 80% 0,rgba(155,92,246,.32),transparent 31rem),radial-gradient(circle at 10% 100%,rgba(245,200,75,.13),transparent 28rem),rgba(8,7,13,.97); }
.auth-gate::before,.auth-gate::after { content:"";position:fixed;pointer-events:none;border-radius:50%;filter:blur(2px); }
.auth-gate::before { width:340px;height:340px;top:-210px;right:-120px;border:1px solid rgba(196,161,255,.1);box-shadow:0 0 0 60px rgba(155,92,246,.025),0 0 0 120px rgba(155,92,246,.018); }
.auth-gate::after { width:240px;height:240px;bottom:-150px;left:-80px;border:1px solid rgba(245,200,75,.08);box-shadow:0 0 0 50px rgba(245,200,75,.018); }
.auth-card { width:min(455px,100%);gap:16px;padding:27px;border-radius:24px;border-color:rgba(196,161,255,.18);background:linear-gradient(150deg,rgba(29,23,42,.94),rgba(13,12,20,.94));box-shadow:0 35px 100px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.025) inset;backdrop-filter:blur(24px); }
.auth-brand { display:flex;align-items:center;gap:13px;color:inherit; }.auth-brand strong { color:#fff;font-size:22px; }.auth-brand small { margin-top:3px;color:var(--muted);font-size:10px;font-weight:600; }
.brand-orbit { position:relative;width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(196,161,255,.2);border-radius:17px;background:linear-gradient(145deg,rgba(155,92,246,.24),rgba(245,200,75,.1));box-shadow:0 15px 35px rgba(0,0,0,.22); }.brand-orbit b { font-size:23px; }.brand-orbit i { position:absolute;width:9px;height:9px;top:5px;left:6px;border-radius:50%;background:var(--accent-warm);box-shadow:0 0 12px rgba(245,200,75,.7); }
.auth-card > h1 { margin-top:2px;font-size:clamp(23px,5vw,30px);letter-spacing:-.03em; }.auth-card > #loginManagedText { padding:10px 12px;border:1px solid rgba(245,200,75,.1);border-radius:11px;background:rgba(245,200,75,.035);font-size:12px; }
.auth-top-actions button { width:42px;height:42px;border-radius:13px;display:grid;place-items:center; }.auth-top-actions svg { font-size:19px; }
.auth-tabs { gap:6px;padding:5px;margin:4px 0 2px;border:1px solid rgba(196,161,255,.1);border-radius:14px;background:rgba(0,0,0,.15); }
.auth-tabs button { min-height:40px;border:0;border-radius:10px;background:transparent; }.auth-tabs button.active { color:#fff!important;border-color:transparent!important;background:linear-gradient(135deg,rgba(155,92,246,.75),rgba(113,52,211,.72))!important;box-shadow:0 8px 20px rgba(72,31,135,.22); }
.auth-card input { min-height:48px;border-radius:12px;border-color:rgba(196,161,255,.14);background:rgba(255,255,255,.045); }.auth-card > #authSubmit { min-height:50px;border:0;border-radius:13px;color:#1a1124;background:linear-gradient(135deg,#f7d15d,#dcae2d);box-shadow:0 12px 28px rgba(245,200,75,.16); }.auth-card > #authSubmit:hover { transform:translateY(-2px);box-shadow:0 16px 34px rgba(245,200,75,.23); }
.enamad-badge { padding:5px;border-radius:14px;border-color:rgba(255,255,255,.15);box-shadow:0 14px 34px rgba(0,0,0,.3); }.enamad-badge img { width:66px; }
.subscription-card,.support-card { border-radius:22px;border-color:rgba(196,161,255,.17);background:linear-gradient(145deg,rgba(29,23,42,.98),rgba(14,12,21,.98));box-shadow:0 35px 100px rgba(0,0,0,.55); }
.plan-card { border-radius:16px;border-color:rgba(196,161,255,.13);background:rgba(255,255,255,.035); }.plan-card.featured { border-color:rgba(245,200,75,.28);background:linear-gradient(145deg,rgba(245,200,75,.09),rgba(155,92,246,.06)); }.plan-card:hover { transform:translateY(-3px);border-color:rgba(245,200,75,.36); }
.admin-nav button > span svg { width:20px;height:20px; }.admin-stat-card,.admin-card { transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }.admin-stat-card:hover,.admin-card:hover { transform:translateY(-2px);border-color:rgba(196,161,255,.28);box-shadow:0 20px 50px rgba(0,0,0,.22); }.admin-stat-card strong { color:#f1c84d; }.admin-header h1,.admin-section-head h2 { color:#f1c84d; }
@media (max-width:640px) {
  body { background:#09080f; }
  .app-shell { padding:0; }
  .chat-panel { height:100dvh;min-height:100dvh;border-radius:0; }
  .topbar { min-height:70px;padding:11px 12px; }.topbar-title { gap:8px; }.topbar h1 { font-size:17px; }.topbar p { font-size:10px; }.online-pill { display:none; }
  .icon-button { width:39px;height:39px; }.topbar-actions { gap:5px; }.subscription-button { min-height:39px;padding:0 9px;font-size:11px; }
  .messages { padding:16px 12px 20px; }.message { max-width:90%;padding:12px 14px;border-radius:16px; }
  .empty-state { padding:24px 8px; }.empty-logo { width:68px;height:68px;border-radius:22px; }.empty-state h2 { font-size:23px; }.empty-state p { font-size:12px; }.empty-features span { padding:6px 9px;font-size:10px; }
  .composer { grid-template-columns:45px 1fr auto;padding:10px; }.attach-button { width:45px; }.composer #sendButton { min-width:67px;grid-column:auto;height:auto; }.composer textarea { min-height:46px;padding:11px 12px; }
  .auth-gate { padding:18px 12px; }.auth-card { padding:20px;border-radius:20px; }.auth-brand small { font-size:9px; }.brand-orbit { width:46px;height:46px; }.enamad-badge img { width:55px; }
}
@media (max-width:390px) { .topbar p { display:none; }.subscription-button { max-width:83px;line-height:1.25; }.composer { grid-template-columns:42px 1fr; }.composer #sendButton { grid-column:1/-1;min-height:43px; }.empty-features { display:none; } }
@media (prefers-reduced-motion:reduce) { .message { animation:none; } button,.admin-card,.admin-stat-card { transition:none!important; } }

/* Navigation layering, natural scrolling and admin users */
.chat-main { position: relative; z-index: 1; }
.chat-sidebar { z-index: 60 !important; opacity: 0; background: linear-gradient(180deg,#251d35 0%,#15101f 100%) !important; backdrop-filter: blur(28px) saturate(145%); -webkit-backdrop-filter: blur(28px) saturate(145%); border-left: 1px solid rgba(211,181,255,.24); box-shadow: -34px 0 90px rgba(0,0,0,.68), inset 1px 0 rgba(255,255,255,.04); }
.chat-panel.sidebar-open .chat-sidebar { opacity: 1 !important; }
.sidebar-scrim { z-index: 50 !important; background: rgba(4,3,8,.72); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); }
.chat-panel.sidebar-open .sidebar-scrim { opacity: 1; pointer-events: auto; }
.messages { overflow-y: auto !important; scrollbar-gutter: auto; }
.admin-users-toolbar { min-width: min(360px,100%); }
.admin-users-toolbar input { min-height: 43px; }
.admin-users-table th:last-child,.admin-users-table td:last-child { text-align: left; }
.admin-users-table td strong { color: #f8f5ff; }
.admin-password-state { display:inline-flex;padding:4px 9px;border-radius:20px;color:#c4b5d7;background:rgba(155,92,246,.1);font-size:11px; }
.admin-edit-column { width: 72px; }
.admin-pencil-button { width:38px;height:38px;display:grid;place-items:center;margin-right:auto;padding:0!important;border:1px solid rgba(245,200,75,.22)!important;border-radius:11px!important;color:#f5c84b!important;background:rgba(245,200,75,.07)!important; }
.admin-pencil-button svg { width:18px;height:18px; }
.admin-pencil-button:hover { transform:translateY(-2px);border-color:rgba(245,200,75,.5)!important;background:rgba(245,200,75,.13)!important;box-shadow:0 10px 24px rgba(0,0,0,.22); }
.admin-user-editor { position:fixed;inset:0;z-index:230;display:grid;place-items:center;padding:18px;background:rgba(4,3,8,.78);backdrop-filter:blur(9px); }
.admin-user-editor.hidden { display:none; }
.admin-user-editor form { width:min(720px,100%);max-height:calc(100dvh - 36px);overflow-y:auto;display:grid;gap:18px;padding:22px;border:1px solid rgba(196,161,255,.2);border-radius:20px;background:linear-gradient(145deg,#20182e,#110e1a);box-shadow:0 35px 100px rgba(0,0,0,.65); }
.admin-editor-close { width:40px;height:40px;padding:0!important;border-color:rgba(255,255,255,.13)!important;background:rgba(255,255,255,.04)!important;font-size:23px!important; }
.admin-user-form-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
.admin-user-password-field { grid-column:1/-1; }
.admin-user-password-field small { color:#9f94ae;font-size:10px;font-weight:500; }
.admin-user-editor-actions { display:flex;justify-content:flex-end;gap:9px; }
.admin-user-editor-actions button { min-width:130px; }
.admin-user-editor-actions .secondary { color:#d8cae8;background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12); }
@media (min-width:641px) { .chat-panel.sidebar-open .sidebar-scrim { opacity:.72;pointer-events:auto; } }
@media (max-width:700px) {
  .admin-section-head { align-items:stretch;flex-direction:column; }
  .admin-users-toolbar { min-width:0;width:100%; }
  .admin-user-form-grid { grid-template-columns:1fr; }
  .admin-user-password-field { grid-column:auto; }
  .admin-users-table { min-width:0; }
  .admin-users-table thead { display:none; }
  .admin-users-table,.admin-users-table tbody,.admin-users-table tr,.admin-users-table td { display:block;width:100%; }
  .admin-users-table tr { margin-bottom:12px;padding:8px;border:1px solid rgba(196,161,255,.14);border-radius:13px;background:rgba(255,255,255,.025); }
  .admin-users-table td { display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px;border-bottom:1px solid rgba(196,161,255,.08);text-align:left; }
  .admin-users-table td::before { content:attr(data-label);color:#9f94ae;text-align:right; }
  .admin-users-table td:last-child { border-bottom:0; }
  .admin-pencil-button { margin-right:0; }
  .admin-user-editor-actions { flex-direction:column-reverse; }.admin-user-editor-actions button { width:100%; }
}

.admin-model-tabs{display:flex;gap:8px;margin:16px 0}.admin-model-tabs button{background:rgba(255,255,255,.04)}.admin-model-tabs button.active{color:#171020;background:#f1c84d}.admin-model-search{width:min(420px,100%);margin-bottom:14px}.admin-model-plan-grid,.admin-routing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-model-plan-grid>section,.admin-routing-grid>section{padding:15px;border:1px solid rgba(196,161,255,.14);border-radius:15px;background:rgba(255,255,255,.025)}.admin-model-checks{max-height:420px;overflow:auto;margin-top:10px}.admin-model-checks label{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:7px;border-bottom:1px solid rgba(196,161,255,.08)}.admin-routing-grid label{display:grid;gap:6px;margin-top:10px}.admin-model-save{display:flex;align-items:center;gap:14px;margin-top:18px}.admin-model-save span{color:#cbbce0}@media(max-width:750px){.admin-model-plan-grid,.admin-routing-grid{grid-template-columns:1fr}.admin-model-tabs{overflow-x:auto}.admin-model-tabs button{white-space:nowrap}}

/* SEO landing content */
.seo-intro{width:min(980px,100%);padding:26px;margin:8px auto 28px;border:1px solid rgba(196,161,255,.14);border-radius:22px;background:rgba(20,17,29,.72);color:#ded6ea}.seo-intro h2{margin:0 0 8px;color:#f5c84b;font-size:clamp(22px,4vw,32px)}.seo-intro>p{margin:0 0 18px;color:rgba(229,220,242,.72);line-height:2}.seo-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.seo-features article{padding:15px;border:1px solid rgba(196,161,255,.1);border-radius:15px;background:rgba(255,255,255,.025)}.seo-features h3{margin:0 0 7px;color:#f8f5ff;font-size:14px}.seo-features p{margin:0;color:rgba(229,220,242,.62);font-size:12px;line-height:1.9}@media(max-width:800px){.seo-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.seo-intro{padding:18px}.seo-features{grid-template-columns:1fr}}

/* Real brand logo */
.auth-gate>.seo-intro{order:2}.auth-gate>.auth-card{order:1}.auth-gate>.enamad-badge{order:3}.brand-orbit,.mini-brand,.empty-logo{overflow:hidden;padding:0!important}.brand-orbit img,.mini-brand img,.empty-logo img{width:100%;height:100%;display:block;object-fit:cover}.brand-orbit i,.brand-orbit b,.empty-logo i,.empty-logo b{display:none!important}

.plan-card.current{border-color:rgba(74,222,128,.5)!important;box-shadow:0 0 0 2px rgba(74,222,128,.08),0 18px 44px rgba(0,0,0,.2)}.plan-card.current h3{color:#86efac}.plan-card.current button{color:#102017!important;background:linear-gradient(135deg,#86efac,#4ade80)!important;border-color:transparent!important}

/* Subscription experience v2 */
.subscription-modal{padding:clamp(10px,2.5vw,28px);background:radial-gradient(circle at 78% 8%,rgba(139,92,246,.22),transparent 28rem),rgba(3,2,7,.84);backdrop-filter:blur(10px)}
.subscription-card{width:min(1180px,100%);max-height:calc(100dvh - 40px);gap:20px;padding:clamp(17px,2.5vw,30px);border-radius:26px;border-color:rgba(196,161,255,.2);background:linear-gradient(145deg,rgba(28,21,40,.98),rgba(11,9,17,.99));box-shadow:0 45px 130px rgba(0,0,0,.72)}
.subscription-eyebrow{display:block;margin-bottom:7px;color:#c4a0ff;font-size:11px;font-weight:800;letter-spacing:.08em}.subscription-head h2{font-size:clamp(22px,3vw,34px);letter-spacing:-.035em}.subscription-head>div>p{margin-top:7px}.subscription-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid rgba(245,200,75,.16);border-radius:18px;background:linear-gradient(120deg,rgba(245,200,75,.08),rgba(155,92,246,.08))}.subscription-hero strong{display:block;color:#fff;font-size:clamp(18px,2.5vw,26px)}.subscription-hero p{margin:6px 0 0;color:#bdb1cc;line-height:1.8}.subscription-hero>span{flex:0 0 auto;padding:9px 13px;border:1px solid rgba(74,222,128,.2);border-radius:30px;color:#86efac;background:rgba(74,222,128,.07);font-size:11px;font-weight:800}
.plans-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.plan-card{position:relative;min-height:340px;gap:12px;padding:19px;border-radius:19px;background:linear-gradient(155deg,rgba(255,255,255,.055),rgba(255,255,255,.018));overflow:hidden}.plan-card::after{content:"";position:absolute;width:110px;height:110px;top:-58px;left:-55px;border-radius:50%;background:rgba(155,92,246,.12);filter:blur(3px)}.plan-card.featured{transform:translateY(-5px);border-color:rgba(245,200,75,.45);background:linear-gradient(150deg,rgba(245,200,75,.13),rgba(155,92,246,.08));box-shadow:0 22px 55px rgba(0,0,0,.25)}.plan-card.premium{border-color:rgba(196,161,255,.28);background:linear-gradient(150deg,rgba(155,92,246,.16),rgba(255,255,255,.025))}.plan-kicker{color:#a99ab9;font-size:10px;font-weight:800}.plan-popular{position:absolute;top:12px;left:12px;padding:5px 9px;border-radius:20px;color:#171020;background:#f5c84b;font-size:9px;font-weight:900}.plan-card h3{color:#fff;font-size:20px}.plan-price{display:block;color:#f5c84b;font-size:22px}.plan-price small{color:#aa9bb9;font-size:10px}.plan-card ul{display:grid;gap:9px;margin:3px 0 8px;padding:0;list-style:none;color:#ddd4e8;font-size:12px}.plan-card li::before{content:"✓";margin-left:7px;color:#4ade80;font-weight:900}.plan-card li.no{color:#8f849c}.plan-card li.no::before{content:"—";color:#8f849c}.plan-card button{margin-top:auto;min-height:47px;border-radius:13px;background:linear-gradient(135deg,rgba(155,92,246,.25),rgba(245,200,75,.11))}.plan-card.featured button,.plan-card.premium button{border:0;color:#171020;background:linear-gradient(135deg,#f7d15d,#dcae2d);box-shadow:0 12px 26px rgba(245,200,75,.14)}.subscription-reassurance{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;color:#aaa0b7;font-size:11px}.subscription-reassurance span{display:flex;align-items:center;gap:5px}
.plan-detail-view{display:grid;gap:18px}.plan-detail-view.hidden,.subscription-overview.hidden{display:none}.plan-back-button{width:max-content;padding:8px 12px!important;border-color:rgba(196,161,255,.14)!important;background:rgba(255,255,255,.035)!important;color:#cbbdde!important}.plan-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;border:1px solid rgba(245,200,75,.2);border-radius:20px;background:linear-gradient(125deg,rgba(155,92,246,.15),rgba(245,200,75,.08))}.plan-detail-hero span{color:#c5a7f5;font-size:11px;font-weight:800}.plan-detail-hero h3{margin:6px 0;color:#fff;font-size:clamp(24px,4vw,38px)}.plan-detail-hero p{margin:0;color:#b9adca}.plan-detail-hero>strong{color:#f5c84b;font-size:clamp(24px,4vw,38px);text-align:left}.plan-detail-hero>strong small{display:block;color:#a99bb7;font-size:11px}
.comparison-wrap{overflow:auto;border:1px solid rgba(196,161,255,.13);border-radius:18px}.plan-comparison{width:100%;min-width:720px;border-collapse:collapse;background:rgba(255,255,255,.018)}.plan-comparison th,.plan-comparison td{padding:13px 15px;border-bottom:1px solid rgba(196,161,255,.09);text-align:center;font-size:12px}.plan-comparison th{color:#f5c84b;background:rgba(155,92,246,.08)}.plan-comparison th:first-child,.plan-comparison td:first-child{text-align:right;color:#d8cfE3;font-weight:800}.plan-comparison td{color:#c3b7d0}.plan-comparison th:nth-child(4),.plan-comparison td:nth-child(4){background:rgba(245,200,75,.045)}
.duration-section{display:grid;gap:14px;padding-top:2px}.duration-section>div:first-child{display:flex;justify-content:space-between;align-items:end;gap:15px}.duration-section>div:first-child span{color:#fff;font-size:17px;font-weight:900}.duration-section>div:first-child small{color:#9588a5}.month-options{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0}.month-options button{position:relative;min-height:108px;display:grid;gap:5px;align-content:center;padding:14px;border-color:rgba(196,161,255,.17);border-radius:16px;background:linear-gradient(145deg,rgba(155,92,246,.15),rgba(255,255,255,.035));box-shadow:none}.month-options button:hover{transform:translateY(-3px);border-color:rgba(245,200,75,.45);background:linear-gradient(145deg,rgba(245,200,75,.14),rgba(155,92,246,.12))}.month-options button span{font-size:15px}.month-options button strong{color:#f5c84b;font-size:16px}.month-options button small{color:#a99db7;font-size:9px}.month-options button em{position:absolute;top:8px;left:8px;padding:3px 7px;border-radius:15px;color:#171020;background:#86efac;font-size:8px;font-style:normal}.subscription-card>.gift-code-form{padding-top:15px;border-top:1px solid rgba(196,161,255,.09)}
@media(max-width:1000px){.plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-card.featured{transform:none}.month-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.subscription-modal{padding:0}.subscription-card{max-height:100dvh;min-height:100dvh;border:0;border-radius:0;padding:16px}.subscription-hero,.plan-detail-hero{align-items:flex-start;flex-direction:column}.subscription-hero>span{align-self:flex-start}.plans-grid{grid-template-columns:1fr}.plan-card{min-height:275px}.duration-section>div:first-child{align-items:flex-start;flex-direction:column}.month-options{grid-template-columns:1fr 1fr}.month-options button{min-height:100px}.gift-code-form{grid-template-columns:1fr}.gift-code-form button{width:100%}}
.message{display:grid;gap:9px}.message-body{white-space:pre-wrap}.message-footer{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:2px;opacity:.62}.message:hover .message-footer{opacity:1}.message-footer button{min-height:26px;padding:3px 7px;border:0;border-radius:7px;color:#bdb1ca;background:transparent;font-size:10px}.message-footer button:hover{color:#fff;background:rgba(255,255,255,.08)}.message-more{position:relative}.message-menu{position:absolute;z-index:20;bottom:31px;left:0;min-width:160px;display:none;padding:6px;border:1px solid rgba(196,161,255,.16);border-radius:12px;background:#1b1425;box-shadow:0 18px 50px #0008}.message-menu.open{display:grid}.message-menu button,.message-menu span{display:block;padding:8px 10px;text-align:right;font-size:11px}.message-menu span{color:#a99db7}.generation-confirmation{display:flex;gap:8px;margin-top:12px}.generation-confirmation button{padding:9px 13px;border:0;border-radius:10px;color:#171020;background:#f5c84b;font-weight:800}.generation-confirmation .secondary{color:#ddd2e9;background:rgba(255,255,255,.08)}.app-toast{position:fixed;z-index:500;top:22px;left:50%;transform:translate(-50%,-15px);padding:10px 18px;border:1px solid rgba(74,222,128,.3);border-radius:12px;color:#d9ffe6;background:#12301d;box-shadow:0 16px 45px #0008;opacity:0;pointer-events:none;transition:.25s}.app-toast.show{transform:translate(-50%,0);opacity:1}
/* Ticket center, announcements and compact gifts */
.gift-code-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.gift-inline-actions{display:flex;gap:6px}.gift-inline-actions button{min-height:30px;padding:4px 9px!important;font-size:10px}.gift-inline-actions .danger{color:#ffb4bd!important;border-color:rgba(255,100,120,.22)!important;background:rgba(255,80,100,.07)!important}.gift-row{grid-template-columns:1fr auto}.gift-row>span{grid-column:1/-1}.gift-row>small{position:absolute;left:12px;bottom:10px}.gift-row{position:relative;padding-bottom:30px}
.admin-announcement-builder{display:grid;gap:12px;margin-top:10px;padding:16px;border:1px solid rgba(196,161,255,.14);border-radius:16px;background:rgba(255,255,255,.025)}.admin-announcement-builder h3{margin:0;color:#f5c84b}.admin-announcement-builder>button{width:max-content}.admin-announcement-builder article{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border:1px solid rgba(196,161,255,.1);border-radius:12px;background:rgba(0,0,0,.12)}.admin-announcement-builder article p{grid-column:1/-1;margin:0;color:#cbbfda}.admin-announcement-builder article small{display:block;color:#9387a3}.admin-announcement-builder article label{display:flex;align-items:center;gap:6px}.admin-announcement-builder article>button{color:#ff9eaa;background:rgba(255,80,100,.07)}
.ticket-center{position:fixed;inset:0;z-index:220}.ticket-center.hidden{display:none}.ticket-center-scrim{position:absolute;inset:0;border:0!important;border-radius:0!important;background:rgba(2,2,5,.72)!important;backdrop-filter:blur(6px)}.ticket-center>aside{position:absolute;top:0;right:0;width:min(920px,94vw);height:100%;display:grid;grid-template-rows:auto 1fr;gap:18px;padding:22px;border-left:1px solid rgba(196,161,255,.16);background:linear-gradient(145deg,#1b1427,#0d0a13);box-shadow:-30px 0 100px #0009}.ticket-center-layout{min-height:0;display:grid;grid-template-columns:260px 1fr;gap:15px}.ticket-center nav{display:grid;align-content:start;gap:7px;overflow:auto;padding-left:4px}.ticket-center nav button{display:grid;gap:5px;padding:12px;text-align:right;border:1px solid rgba(196,161,255,.1);border-radius:12px;color:#e7dff0;background:rgba(255,255,255,.025)}.ticket-center nav button.active{border-color:rgba(245,200,75,.35);background:rgba(245,200,75,.08)}.ticket-center nav small{color:#998ca8}.ticket-center main{min-height:0;overflow:auto;padding:16px;border:1px solid rgba(196,161,255,.1);border-radius:16px;background:rgba(255,255,255,.02)}.ticket-center main>header{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(196,161,255,.1)}.ticket-center main h3{margin:0 0 14px;color:#f5c84b}.ticket-thread{display:grid;gap:10px;padding:16px 0}.ticket-bubble{max-width:85%;padding:12px 14px;border-radius:14px;background:rgba(155,92,246,.12)}.ticket-bubble.admin{margin-right:auto;background:rgba(245,200,75,.09)}.ticket-bubble p{margin:6px 0;line-height:1.9}.ticket-bubble small{color:#9487a4}.ticket-center main form{display:grid;gap:9px}.ticket-center main textarea{width:100%;box-sizing:border-box}.ticket-center main form button{width:max-content}
.announcement-modal{position:fixed;inset:0;z-index:260;display:grid;place-items:center;padding:18px;background:rgba(2,2,5,.72);backdrop-filter:blur(7px)}.announcement-modal.hidden{display:none}.announcement-modal article{position:relative;width:min(520px,100%);display:grid;gap:14px;padding:25px;border:1px solid rgba(245,200,75,.22);border-radius:22px;background:linear-gradient(145deg,#21172d,#110d18);box-shadow:0 35px 100px #000a}.announcement-modal article>button{position:absolute;top:10px;left:10px;width:34px;height:34px;padding:0}.announcement-modal h2{margin:0;color:#f5c84b}.announcement-modal p{color:#ded4e8;line-height:2;white-space:pre-wrap}.announcement-modal img{width:100%;max-height:340px;object-fit:contain;border-radius:14px}.announcement-modal a{display:inline-block;padding:11px 15px;border-radius:11px;color:#171020;background:#f5c84b;text-decoration:none;font-weight:800}
@media(max-width:700px){.ticket-center>aside{width:100%;padding:14px}.ticket-center-layout{grid-template-columns:1fr;grid-template-rows:190px 1fr}.ticket-center nav{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-bubble{max-width:94%}.gift-code-main{align-items:flex-start;flex-direction:column}.gift-inline-actions{flex-wrap:wrap}.admin-announcement-builder article{grid-template-columns:1fr}}
.admin-ticket-thread{display:grid;gap:8px;margin:12px 0;padding:12px;border:1px solid rgba(196,161,255,.09);border-radius:13px;background:rgba(0,0,0,.12)}.admin-ticket-message{max-width:86%;padding:10px 12px;border-radius:12px;background:rgba(155,92,246,.1)}.admin-ticket-message.admin{margin-right:auto;background:rgba(245,200,75,.08)}.admin-ticket-message p{margin:5px 0!important}.admin-ticket-message small{color:#9589a4}


/* KeyChat UX refresh — 2026 */
:root{--kc-bg:#09080d;--kc-surface:#121017;--kc-surface-2:#19151f;--kc-line:rgba(255,255,255,.075);--kc-text:#f6f2fa;--kc-muted:#9d94a7;--kc-purple:#a970ff;--kc-purple-2:#7c3aed;--kc-gold:#f4ca57;--kc-green:#4ade9a}
html{background:var(--kc-bg);scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}*{scrollbar-width:none!important;-ms-overflow-style:none}body{overflow:hidden;background:radial-gradient(ellipse 70% 55% at 72% -15%,rgba(125,61,220,.19),transparent),var(--kc-bg)}
.app-shell{padding:0;background:transparent}.chat-panel{width:100%;height:100dvh;max-height:none;min-height:0;border:0;border-radius:0;background:var(--kc-bg);box-shadow:none;backdrop-filter:none}.chat-panel:before{display:none}.chat-main{background:var(--kc-bg)}
.topbar{min-height:68px;padding:10px 18px;border-bottom:1px solid var(--kc-line);background:rgba(9,8,13,.88);backdrop-filter:blur(18px)}.topbar-title{gap:11px}.topbar h1{margin:0;font-size:17px;font-weight:850;letter-spacing:-.02em}.topbar p{font-size:11px;color:#8f8799}.online-pill{padding:4px 8px;border:1px solid rgba(74,222,154,.14);background:rgba(74,222,154,.07);font-size:9px}.icon-button{width:40px;height:40px;border:1px solid var(--kc-line);border-radius:12px;background:transparent}.icon-button:hover{border-color:rgba(169,112,255,.28);background:rgba(169,112,255,.08);box-shadow:none;transform:none}.subscription-button{min-height:40px;padding:0 16px;border:1px solid rgba(244,202,87,.24);border-radius:12px;color:#f8d875;background:rgba(244,202,87,.07);box-shadow:none}.subscription-button:hover{background:rgba(244,202,87,.13)}
.chat-sidebar{width:300px;padding:14px;gap:12px;border-left:1px solid var(--kc-line);background:rgba(18,15,24,.97)!important;box-shadow:-24px 0 70px rgba(0,0,0,.52);backdrop-filter:blur(24px)}.sidebar-brand strong{font-size:15px}.sidebar-brand small{color:#82798b}.mini-brand{width:38px!important;height:38px!important;border-radius:12px!important}.sidebar-close{border:0;background:transparent}.new-chat-button{min-height:48px;border:1px solid rgba(169,112,255,.2);border-radius:14px;padding:0 14px;color:#f7f2fb;background:linear-gradient(135deg,rgba(169,112,255,.13),rgba(169,112,255,.04));box-shadow:none}.new-chat-button:hover{border-color:rgba(169,112,255,.36);background:rgba(169,112,255,.14)}.tool-list{gap:3px}.tool-item{min-height:43px;border-radius:12px;padding:7px 10px;color:#bbb2c4}.tool-item.active{border-color:transparent;color:#fff;background:rgba(255,255,255,.075)}.tool-item:hover{border-color:transparent;background:rgba(255,255,255,.05)}.tool-icon,.line-icon{width:28px;height:28px;border:0;border-radius:9px;color:#b990f4;background:rgba(169,112,255,.08)}.history-panel{border-top:1px solid var(--kc-line);padding-top:13px}.history-title,.history-group-title{padding:0 7px;color:#746c7c;font-size:10px}.chat-history{gap:8px;padding:0 0 16px}.history-group{gap:3px}.chat-history-item{border-radius:11px}.chat-tab{min-height:38px;border:0;border-radius:10px;padding:7px 8px;color:#a9a0b2}.chat-tab.active{border:0;color:#f3edf7;background:rgba(255,255,255,.065)}.chat-tab-marker{display:none}.chat-action-button{opacity:.45}.sidebar-scrim{background:rgba(3,2,5,.68);backdrop-filter:blur(4px)}
.workspace,.message-area{background:var(--kc-bg)}.messages{width:100%;padding:34px max(20px,calc((100% - 860px)/2)) 24px;gap:6px;scrollbar-gutter:auto;background:radial-gradient(circle at 50% 38%,rgba(127,73,201,.035),transparent 34%)}.empty-state{width:min(760px,100%);gap:16px;padding:20px;margin:auto}.empty-logo{width:76px;height:76px;border-radius:24px!important;box-shadow:0 18px 55px rgba(127,73,201,.22)}.empty-state h2{font-size:clamp(28px,4vw,44px);font-weight:850;letter-spacing:-.045em;background:linear-gradient(100deg,#fff 30%,#cdb5f5 75%,#f3cf69);-webkit-background-clip:text;background-clip:text;color:transparent}.empty-state p{max-width:620px;color:#91889b;font-size:14px;line-height:2}.empty-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(650px,100%);gap:10px;margin-top:10px}.empty-features span{min-height:64px;display:grid;place-items:center;padding:12px;border:1px solid var(--kc-line);border-radius:16px;color:#b8afc1;background:rgba(255,255,255,.025);font-size:12px;transition:.2s}.empty-features span:hover{transform:translateY(-2px);border-color:rgba(169,112,255,.22);background:rgba(169,112,255,.055)}
.message{position:relative;width:100%;max-width:100%;padding:18px 12px;border:0!important;border-radius:0!important;line-height:1.95;box-shadow:none!important;background:transparent!important;animation:none}.message+.message{border-top:1px solid rgba(255,255,255,.035)!important}.message.user{align-self:stretch;color:#f5eff9}.message.assistant{align-self:stretch;color:#e8e1ed}.message-body{width:min(800px,100%);margin:auto;font-size:14px}.message.user .message-body{width:fit-content;max-width:min(76%,700px);margin-right:0;margin-left:auto;padding:11px 15px;border:1px solid rgba(169,112,255,.15);border-radius:17px 17px 5px 17px;background:linear-gradient(135deg,rgba(126,63,210,.38),rgba(84,44,135,.3))}.message.assistant .message-body{padding:2px 0}.message.assistant .message-body:before{content:"K";float:right;width:28px;height:28px;display:grid;place-items:center;margin:2px 0 4px 10px;border-radius:9px;color:#1a1021;background:linear-gradient(145deg,#f7d96e,#e6af2b);font-size:11px;font-weight:900}.message-footer{width:min(800px,100%);margin:7px auto 0;opacity:0;transition:opacity .18s}.message:hover .message-footer,.message:focus-within .message-footer{opacity:1}.message.user .message-footer{justify-content:flex-end}.message-copy,.message-more>button{min-height:28px;border:0!important;border-radius:8px!important;color:#817789!important;background:transparent!important;font-size:10px!important}.message-copy:hover,.message-more>button:hover{color:#cbbfd5!important;background:rgba(255,255,255,.045)!important}.message-menu{border:1px solid var(--kc-line)!important;border-radius:13px!important;background:#18131f!important;box-shadow:0 18px 60px #0009!important}.message-image-block{max-width:520px}.generated-image{width:100%;border-radius:18px;border-color:var(--kc-line)}.message.error{width:min(800px,calc(100% - 24px));margin:10px auto;padding:12px 15px!important;border:1px solid rgba(255,100,120,.2)!important;border-radius:13px!important;background:rgba(255,100,120,.07)!important}
.mode-bar{position:absolute;z-index:4;bottom:79px;right:max(20px,calc((100% - 860px)/2));width:max-content;max-width:280px;padding:5px 9px;border:0;border-radius:8px;color:#786f81;background:transparent;font-size:9px;pointer-events:none}.attachment-list{position:absolute;z-index:5;bottom:82px;left:50%;width:min(860px,calc(100% - 24px));transform:translateX(-50%);padding:0;background:transparent}.composer{position:relative;width:min(880px,calc(100% - 28px));margin:0 auto 18px;grid-template-columns:42px minmax(0,1fr) 58px;gap:6px;padding:8px;border:1px solid rgba(255,255,255,.105);border-radius:22px;background:rgba(25,21,31,.96);box-shadow:0 18px 70px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.02) inset}.composer:focus-within{border-color:rgba(169,112,255,.3);box-shadow:0 20px 80px rgba(0,0,0,.45),0 0 0 3px rgba(169,112,255,.055)}.composer textarea{min-height:46px;max-height:180px;padding:11px 8px;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;font-size:14px}.composer textarea::placeholder{color:#776f80}.attach-button{width:42px;height:42px;align-self:end;border:0;border-radius:13px;color:#a49baa;background:transparent}.attach-button:hover{background:rgba(255,255,255,.055);transform:none}.composer #sendButton{min-width:0;width:48px;height:42px;align-self:end;border:0;border-radius:13px;color:transparent;background:linear-gradient(145deg,#ad78ff,#7842d2);box-shadow:0 8px 22px rgba(124,58,237,.28);font-size:0}.composer #sendButton:after{content:"↑";color:#fff;font-size:22px;font-weight:800}.composer #sendButton:hover{transform:none;filter:brightness(1.08)}
.subscription-modal,.feedback-modal,.support-modal{backdrop-filter:blur(12px)}.subscription-card,.support-card{border-color:var(--kc-line);background:#121017;box-shadow:0 35px 130px rgba(0,0,0,.72)}
.admin-main,.admin-nav,.admin-content,.admin-user-editor form,.subscription-card,.comparison-wrap,.code-output{scrollbar-width:none!important}.admin-main::-webkit-scrollbar,.admin-nav::-webkit-scrollbar,.admin-content::-webkit-scrollbar,.subscription-card::-webkit-scrollbar,.comparison-wrap::-webkit-scrollbar,.code-output::-webkit-scrollbar{display:none!important}
@media(min-width:1100px){.chat-sidebar{position:relative;right:auto;transform:none;opacity:1;pointer-events:auto;box-shadow:none}.chat-panel{grid-template-columns:300px minmax(0,1fr);direction:rtl}.chat-main{direction:rtl}.menu-toggle,.sidebar-close,.sidebar-scrim{display:none}.messages{padding-right:max(24px,calc((100% - 860px)/2));padding-left:max(24px,calc((100% - 860px)/2))}}
@media(max-width:760px){body{background:var(--kc-bg)}.topbar{min-height:61px;padding:8px 9px}.topbar p,.online-pill{display:none}.topbar h1{font-size:15px}.topbar-actions{gap:3px}.icon-button{width:38px;height:38px;border:0}.subscription-button{min-height:37px;max-width:92px;padding:0 9px;font-size:10px}.chat-sidebar{width:min(88vw,320px);padding:13px}.messages{padding:18px 12px 14px}.empty-state{justify-content:start;padding-top:10vh}.empty-logo{width:64px;height:64px;border-radius:20px!important}.empty-state h2{font-size:27px}.empty-state p{font-size:12px;line-height:1.9}.empty-features{grid-template-columns:1fr;gap:7px;width:100%}.empty-features span{min-height:47px}.message{padding:14px 4px}.message-body{font-size:13px}.message.user .message-body{max-width:88%;padding:9px 12px}.message.assistant .message-body:before{width:25px;height:25px}.message-footer{opacity:1}.mode-bar{display:none}.attachment-list{bottom:72px}.composer{width:calc(100% - 16px);margin:0 8px calc(8px + env(safe-area-inset-bottom));grid-template-columns:40px minmax(0,1fr) 46px;padding:6px;border-radius:18px}.composer textarea{min-height:42px;padding:9px 5px;font-size:13px}.attach-button{width:40px;height:40px}.composer #sendButton{grid-column:auto;width:42px;height:40px;min-height:0}.composer #sendButton:after{font-size:20px}.chat-panel.code-mode .workspace{overflow:auto}.empty-features span:nth-child(n+3){display:none}}
@media(max-width:390px){.composer{grid-template-columns:38px minmax(0,1fr) 42px}.composer #sendButton{grid-column:auto;min-height:38px}.topbar-actions #clearButton{display:none}.empty-state h2{font-size:24px}}


/* Full product audit refinements */
.seo-intro{position:relative;overflow:hidden}.seo-intro:before{content:"";position:absolute;width:260px;height:260px;top:-170px;left:-120px;border-radius:50%;background:rgba(169,112,255,.12);filter:blur(10px);pointer-events:none}.seo-eyebrow{display:inline-flex;margin-bottom:9px;padding:5px 9px;border:1px solid rgba(244,202,87,.17);border-radius:999px;color:#e7c85f;background:rgba(244,202,87,.055);font-size:10px;font-weight:800}.seo-intro h1{position:relative;margin:0 0 10px;color:#fff;font-size:clamp(25px,4vw,38px);line-height:1.5;letter-spacing:-.035em}.seo-actions{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 4px}.seo-actions button,.seo-actions a{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#e9e1ef;text-decoration:none;background:rgba(255,255,255,.04);cursor:pointer}.seo-actions button{border:0;color:#1a1122;background:linear-gradient(135deg,#f7d86b,#e7ae28);font-weight:850}.auth-card h2{margin:16px 0 10px;font-size:24px}.auth-card label{gap:7px}.auth-card input,.admin-login-form input,.gift-admin-form input,.gift-admin-form select,.admin-card textarea,.admin-card input,.admin-card select{min-height:44px}.auth-tabs button{min-height:40px}.auth-card #authSubmit{min-height:48px}.auth-message:empty{display:none}
.chat-history-item{align-items:start}.chat-tab{height:auto;min-height:40px;align-items:start}.chat-tab-title{overflow:visible!important;text-overflow:clip!important;white-space:normal!important;display:block;line-height:1.65;word-break:break-word}.chat-action-menu,.chat-history-item>.chat-action-button{align-self:start;margin-top:3px}.history-group{gap:5px}.chat-sidebar{width:330px}.chat-panel{--sidebar-width:330px}@media(min-width:1100px){.chat-panel{grid-template-columns:330px minmax(0,1fr)}.chat-sidebar{width:330px}}
.tool-item,.new-chat-button,.chat-tab,.subscription-button,.icon-button,.attach-button,.composer #sendButton{touch-action:manipulation}.tool-item:focus-visible,.new-chat-button:focus-visible,.chat-tab:focus-visible,.subscription-button:focus-visible,.icon-button:focus-visible,.attach-button:focus-visible,.composer #sendButton:focus-visible,.seo-actions button:focus-visible,.seo-actions a:focus-visible{outline:2px solid rgba(244,202,87,.75);outline-offset:2px}.subscription-head{position:sticky;top:0;z-index:4;padding-bottom:10px;background:linear-gradient(180deg,#15101e 72%,transparent)}.plan-card button{min-height:48px}.month-options button{min-height:92px}.admin-nav button{min-height:44px}.admin-table td,.admin-table th{line-height:1.7}.admin-content{padding-bottom:60px}
@media(max-width:760px){.seo-intro{padding:20px 16px}.seo-intro h1{font-size:27px}.seo-actions>*{flex:1}.seo-features{grid-template-columns:1fr 1fr}.seo-features article{padding:12px}.auth-gate{padding:14px 10px 24px}.auth-card{padding:20px 16px}.auth-card h2{font-size:21px}.auth-tabs{overflow-x:auto;justify-content:flex-start}.auth-tabs button{flex:0 0 auto;min-width:88px}.chat-sidebar{width:min(92vw,350px)}.chat-tab-title{display:block}.subscription-card{padding:14px}.subscription-head{align-items:flex-start}.admin-header{min-height:70px}.admin-page-title{font-size:18px}.admin-table-wrap{border-radius:12px}}
@media(max-width:430px){.seo-features{grid-template-columns:1fr}.seo-features article:nth-child(n+4){display:none}.seo-actions{display:grid;grid-template-columns:1fr}.auth-brand small{font-size:10px}}

/* Restore compact single-line conversation titles */
.chat-history-item{align-items:center}
.chat-tab{height:40px;min-height:40px;align-items:center}
.chat-tab-title{min-width:0!important;display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;word-break:normal!important;line-height:1.5!important}
.chat-action-menu,.chat-history-item>.chat-action-button{align-self:center;margin-top:0}


/* Definitive history row layout fix */
.chat-history-item{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  padding-left:72px!important;
}
.chat-history-item .chat-tab{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  padding:8px 10px!important;
  text-align:right!important;
}
.chat-history-item .chat-tab-marker,
.chat-history-item .unread-dot{display:none!important}
.chat-history-item .chat-tab-title{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  direction:rtl!important;
  unicode-bidi:plaintext!important;
}
.chat-history-item>.chat-action-button{
  position:absolute!important;
  top:4px!important;
  left:38px!important;
  z-index:3!important;
}
.chat-history-item>.chat-action-menu{
  position:absolute!important;
  top:4px!important;
  left:2px!important;
  z-index:4!important;
  width:32px!important;
  height:32px!important;
}
.chat-history-item>.chat-action-menu>.chat-action-button{width:32px!important;height:32px!important}
.chat-history-item .chat-menu-popover{left:0!important;right:auto!important}


/* Keep the useful conversation-history scrollbar visible */
.chat-history{
  overflow-y:auto!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(169,112,255,.55) rgba(255,255,255,.025)!important;
  padding-left:5px!important;
}
.chat-history::-webkit-scrollbar{
  display:block!important;
  width:7px!important;
  height:7px!important;
}
.chat-history::-webkit-scrollbar-track{
  display:block!important;
  background:rgba(255,255,255,.025)!important;
  border-radius:999px!important;
}
.chat-history::-webkit-scrollbar-thumb{
  display:block!important;
  min-height:42px!important;
  border:2px solid transparent!important;
  border-radius:999px!important;
  background:rgba(169,112,255,.55)!important;
  background-clip:padding-box!important;
}
.chat-history::-webkit-scrollbar-thumb:hover{
  background:rgba(196,154,255,.78)!important;
  background-clip:padding-box!important;
}


/* Final override: keep only the useful in-chat scrollbar visible */
.messages { overflow-y:auto!important; scrollbar-width:thin!important; scrollbar-color:rgba(169,112,255,.55) rgba(255,255,255,.025)!important; }
.messages::-webkit-scrollbar { display:block!important; width:7px!important; height:7px!important; }
.messages::-webkit-scrollbar-track { display:block!important; background:rgba(255,255,255,.025)!important; border-radius:999px!important; }
.messages::-webkit-scrollbar-thumb { display:block!important; min-height:42px!important; border:2px solid transparent!important; border-radius:999px!important; background:rgba(169,112,255,.55)!important; background-clip:padding-box!important; }
.messages::-webkit-scrollbar-thumb:hover { background:rgba(196,154,255,.78)!important; background-clip:padding-box!important; }




/* Stable layout and independently scrollable history */
html, body, .app-shell, .chat-panel { width:100%!important; max-width:100%!important; overflow-x:hidden!important; }
.chat-panel, .chat-main, .workspace, .message-area { min-width:0!important; }
.chat-main { width:100%!important; height:100dvh!important; min-height:0!important; overflow:hidden!important; }
.workspace { min-height:0!important; overflow:hidden!important; }
.message-area { min-width:0!important; min-height:0!important; overflow:hidden!important; }
.composer { max-width:calc(100% - 28px)!important; box-sizing:border-box!important; }
.chat-sidebar { min-width:0!important; min-height:0!important; max-height:100dvh!important; overflow:hidden!important; grid-template-rows:auto auto auto minmax(0,1fr)!important; box-sizing:border-box!important; }
.history-panel { min-width:0!important; min-height:0!important; height:auto!important; overflow:hidden!important; grid-template-rows:auto minmax(0,1fr)!important; }
.chat-history { width:100%!important; min-width:0!important; min-height:0!important; height:auto!important; max-height:100%!important; overflow-y:auto!important; overflow-x:hidden!important; overscroll-behavior:contain!important; scrollbar-gutter:auto!important; box-sizing:border-box!important; scrollbar-width:thin!important; scrollbar-color:rgba(169,112,255,.55) rgba(255,255,255,.025)!important; padding-left:5px!important; }
.chat-history::-webkit-scrollbar { display:block!important; width:7px!important; height:0!important; }
.chat-history::-webkit-scrollbar-track { display:block!important; background:rgba(255,255,255,.025)!important; border-radius:999px!important; }
.chat-history::-webkit-scrollbar-thumb { display:block!important; min-height:42px!important; border:2px solid transparent!important; border-radius:999px!important; background:rgba(169,112,255,.55)!important; background-clip:padding-box!important; }
.chat-history::-webkit-scrollbar-thumb:hover { background:rgba(196,154,255,.78)!important; background-clip:padding-box!important; }
@media(max-width:760px){ .composer { max-width:calc(100% - 16px)!important; } }


/* Context-aware scrolling: login, admin and long-content surfaces */
.auth-gate { justify-content:flex-start!important; overflow-y:auto!important; overflow-x:hidden!important; overscroll-behavior:contain!important; scrollbar-width:thin!important; scrollbar-color:rgba(169,112,255,.58) rgba(255,255,255,.035)!important; }
.auth-gate::-webkit-scrollbar, .admin-main::-webkit-scrollbar, .admin-nav::-webkit-scrollbar, .admin-content::-webkit-scrollbar, .admin-user-editor form::-webkit-scrollbar, .subscription-card::-webkit-scrollbar, .comparison-wrap::-webkit-scrollbar, .code-output::-webkit-scrollbar { display:block!important; width:8px!important; height:8px!important; }
.auth-gate::-webkit-scrollbar-track, .admin-main::-webkit-scrollbar-track, .admin-nav::-webkit-scrollbar-track, .admin-content::-webkit-scrollbar-track, .admin-user-editor form::-webkit-scrollbar-track, .subscription-card::-webkit-scrollbar-track, .comparison-wrap::-webkit-scrollbar-track, .code-output::-webkit-scrollbar-track { display:block!important; background:rgba(255,255,255,.025)!important; border-radius:999px!important; }
.auth-gate::-webkit-scrollbar-thumb, .admin-main::-webkit-scrollbar-thumb, .admin-nav::-webkit-scrollbar-thumb, .admin-content::-webkit-scrollbar-thumb, .admin-user-editor form::-webkit-scrollbar-thumb, .subscription-card::-webkit-scrollbar-thumb, .comparison-wrap::-webkit-scrollbar-thumb, .code-output::-webkit-scrollbar-thumb { display:block!important; border:2px solid transparent!important; border-radius:999px!important; background:rgba(169,112,255,.58)!important; background-clip:padding-box!important; }
.admin-main, .admin-nav, .admin-content, .admin-user-editor form, .subscription-card, .comparison-wrap, .code-output { scrollbar-width:thin!important; scrollbar-color:rgba(169,112,255,.58) rgba(255,255,255,.025)!important; }
.auth-gate > .auth-card, .auth-gate > .seo-intro, .auth-gate > .enamad-badge { flex:0 0 auto!important; }
.auth-gate > .auth-card { margin-top:0!important; }
.auth-gate > .enamad-badge { margin-bottom:0!important; }
.auth-gate > .seo-intro { height:auto!important; min-height:max-content!important; overflow:visible!important; }
.seo-features, .seo-features article { min-width:0!important; }
.admin-panel { width:100%!important; max-width:100%!important; overflow:hidden!important; }
.admin-main { height:100dvh!important; min-width:0!important; overflow-y:auto!important; overflow-x:hidden!important; overscroll-behavior:contain!important; }
.admin-content { min-width:0!important; overflow:visible!important; }
@media(max-width:760px){ .auth-gate { padding:14px 10px 28px!important; } .auth-gate > .auth-card { margin-top:0!important; } .auth-gate > .enamad-badge { margin-bottom:0!important; } .auth-gate > .seo-intro { width:100%!important; margin-bottom:12px!important; } }


/* Admin AI command center */
.admin-ai-shell{height:calc(100dvh - 136px);min-height:560px;display:grid;grid-template-columns:250px minmax(0,1fr);overflow:hidden;border:1px solid rgba(169,112,255,.18);border-radius:20px;background:rgba(13,10,19,.72)}
.admin-ai-shell>aside{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:12px;border-left:1px solid rgba(169,112,255,.14);overflow:hidden;background:rgba(255,255,255,.018)}
#adminAiNew{min-height:44px;background:rgba(169,112,255,.14)!important}
#adminAiChats{min-height:0;overflow-y:auto;display:grid;align-content:start;gap:6px;scrollbar-width:thin!important;scrollbar-color:rgba(169,112,255,.55) transparent!important}
#adminAiChats::-webkit-scrollbar,.admin-ai-messages::-webkit-scrollbar{display:block!important;width:7px!important}
#adminAiChats::-webkit-scrollbar-thumb,.admin-ai-messages::-webkit-scrollbar-thumb{display:block!important;border:2px solid transparent!important;border-radius:999px!important;background:rgba(169,112,255,.55)!important;background-clip:padding-box!important}
.admin-ai-chat-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 30px;gap:4px;border-radius:11px}.admin-ai-chat-row.active{background:rgba(169,112,255,.1)}
.admin-ai-chat-row>button{min-width:0;border:0!important;background:transparent!important;text-align:right}.admin-ai-chat-row>button:first-child{display:grid;gap:3px}.admin-ai-chat-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.admin-ai-chat-row small{color:#82778e;font-size:9px}.admin-ai-chat-row>button:last-child{padding:0!important;color:#96899f}
.admin-ai-shell>main{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.admin-ai-shell>main>header{padding:14px 18px;border-bottom:1px solid rgba(169,112,255,.12)}.admin-ai-shell>main>header strong,.admin-ai-shell>main>header small{display:block}.admin-ai-shell>main>header small{margin-top:4px;color:#9f92ab;font-size:10px}
.admin-ai-messages{min-height:0;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px;scrollbar-width:thin!important;scrollbar-color:rgba(169,112,255,.55) transparent!important}.admin-ai-message{max-width:min(82%,780px);padding:13px 15px;border:1px solid rgba(255,255,255,.07);border-radius:16px;line-height:1.9;background:rgba(255,255,255,.035)}.admin-ai-message.user{align-self:flex-start;color:#fff;background:rgba(126,63,210,.28)}.admin-ai-message.assistant{align-self:flex-end}.admin-ai-message>small{display:block;margin-top:8px;color:#83768e;font-size:9px}
.admin-ai-action{margin-top:12px;padding:12px;border:1px solid rgba(244,202,87,.2);border-radius:12px;background:rgba(244,202,87,.055)}.admin-ai-action pre{max-height:150px;overflow:auto;direction:ltr;text-align:left;white-space:pre-wrap;color:#cfc3da}.admin-ai-action>div{display:flex;gap:7px}.admin-ai-action .secondary{background:rgba(255,255,255,.05)!important}
#adminAiForm{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px;border-top:1px solid rgba(169,112,255,.12)}#adminAiInput{min-height:50px;max-height:150px;resize:vertical}#adminAiForm button{min-width:78px}.admin-ai-empty{margin:auto;text-align:center;color:#a99db6}.admin-ai-empty strong{color:#f5c84b;font-size:18px}.admin-ai-empty div{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.admin-ai-empty button{background:rgba(169,112,255,.1)!important}
@media(max-width:820px){.admin-ai-shell{height:calc(100dvh - 120px);min-height:0;grid-template-columns:1fr;grid-template-rows:118px minmax(0,1fr)}.admin-ai-shell>aside{grid-template-columns:130px minmax(0,1fr);grid-template-rows:1fr;border-left:0;border-bottom:1px solid rgba(169,112,255,.14)}#adminAiChats{grid-auto-flow:column;grid-auto-columns:minmax(150px,210px);overflow-x:auto;overflow-y:hidden}.admin-ai-messages{padding:12px}.admin-ai-message{max-width:94%}}
@media(max-width:480px){.admin-ai-shell{height:calc(100dvh - 104px);border-radius:14px}.admin-ai-shell>aside{grid-template-columns:105px minmax(0,1fr);padding:8px}.admin-ai-shell>main>header{padding:9px 12px}.admin-ai-messages{padding:9px}.admin-ai-message{max-width:98%;padding:11px;font-size:12px}#adminAiForm{padding:8px;grid-template-columns:minmax(0,1fr) 58px}#adminAiForm button{min-width:0;padding:8px!important}}


/* KeyChat typography system */
:root{--kc-font:"Vazirmatn",Tahoma,Arial,sans-serif}
html,body,button,input,textarea,select{font-family:var(--kc-font);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body{font-weight:400;letter-spacing:0}
input,textarea,select{font-weight:400;line-height:1.75}
button,.tool-item,.chat-tab,.admin-nav button{font-weight:600}
.auth-card h2,.seo-intro h1,.empty-state h2,.subscription-head h2,.admin-header h1{font-weight:800;letter-spacing:-.025em}
.auth-brand strong,.sidebar-brand strong,.admin-brand strong{font-weight:750}
.seo-intro>p,.seo-features p,.auth-card p{line-height:2;font-weight:400}
.message-body{font-size:14.5px!important;line-height:2.05!important;font-weight:400}
.message.user .message-body{font-weight:450}
.chat-tab-title{font-weight:450!important}
.composer textarea{font-size:14.5px!important;line-height:1.85!important}
.admin-content,.admin-panel{font-weight:400}.admin-card h2,.admin-section-head h2{font-weight:750}.admin-table th{font-weight:650}.admin-table td{font-weight:400}
.admin-ai-message{font-weight:400;line-height:2}.plan-price,.plan-detail-hero>strong{font-variant-numeric:tabular-nums}
@media(max-width:760px){.message-body{font-size:13.5px!important;line-height:2!important}.composer textarea{font-size:14px!important}.seo-intro h1{line-height:1.55}}


/* Two-state light/dark theme */
.theme-toggle{position:relative;overflow:hidden;flex:0 0 auto;transition:background .22s ease,border-color .22s ease,color .22s ease,transform .18s ease}.theme-toggle:active{transform:scale(.94)}.theme-icon{position:absolute;inset:0;display:grid;place-items:center;font-size:18px;transition:opacity .2s ease,transform .25s ease}.theme-moon{opacity:0;transform:rotate(-55deg) scale(.65)}html[data-theme="light"] .theme-sun{opacity:0;transform:rotate(55deg) scale(.65)}html[data-theme="light"] .theme-moon{opacity:1;transform:rotate(0) scale(1)}
html[data-theme="light"]{--kc-bg:#f4f1f8;--kc-surface:#ffffff;--kc-surface-2:#f7f4fa;--kc-line:rgba(60,36,82,.11);--kc-text:#241a2d;--kc-muted:#74677f;--bg:#f4f1f8;--panel:#fff;--panel-2:#f7f4fa;--glass:rgba(255,255,255,.8);--glass-line:rgba(60,36,82,.11);--text:#241a2d;--muted:rgba(50,36,62,.64);--line:rgba(60,36,82,.11);color-scheme:light;background:#f4f1f8}
html[data-theme="light"] body{color:#241a2d;background:radial-gradient(ellipse 65% 50% at 75% -10%,rgba(142,89,220,.12),transparent),#f4f1f8}
html[data-theme="light"] .chat-panel,html[data-theme="light"] .chat-main,html[data-theme="light"] .workspace,html[data-theme="light"] .message-area{background:#f4f1f8!important}
html[data-theme="light"] .topbar{border-color:rgba(60,36,82,.1);background:rgba(250,248,252,.9);box-shadow:0 8px 30px rgba(54,33,72,.045)}
html[data-theme="light"] .topbar h1,html[data-theme="light"] .sidebar-brand strong{color:#241a2d}html[data-theme="light"] .topbar p,html[data-theme="light"] .sidebar-brand small{color:#786c82}
html[data-theme="light"] .icon-button{color:#5d4d69;border-color:rgba(75,48,96,.12);background:rgba(255,255,255,.72)}html[data-theme="light"] .icon-button:hover{color:#6f3fb0;border-color:rgba(126,74,190,.24);background:#fff}
html[data-theme="light"] .theme-toggle{color:#6940a0;background:linear-gradient(145deg,#fff,#eee8f4);box-shadow:0 7px 20px rgba(68,41,88,.08)}
html[data-theme="light"] .subscription-button{color:#6d5110;border-color:rgba(184,135,21,.25);background:rgba(244,202,87,.2)}
html[data-theme="light"] .chat-sidebar{color:#2b2033;border-color:rgba(60,36,82,.1);background:rgba(250,248,252,.98)!important;box-shadow:-24px 0 70px rgba(54,33,72,.12)}
html[data-theme="light"] .new-chat-button{color:#392747;border-color:rgba(126,74,190,.18);background:linear-gradient(135deg,rgba(154,102,221,.13),rgba(255,255,255,.75))}
html[data-theme="light"] .tool-item,html[data-theme="light"] .chat-tab{color:#62556c}html[data-theme="light"] .tool-item:hover,html[data-theme="light"] .chat-tab:hover{background:rgba(94,61,117,.055)}html[data-theme="light"] .tool-item.active,html[data-theme="light"] .chat-tab.active{color:#392747;background:rgba(112,68,151,.09)}html[data-theme="light"] .history-panel{border-color:rgba(60,36,82,.09)}html[data-theme="light"] .history-title,html[data-theme="light"] .history-group-title{color:#887c91}
html[data-theme="light"] .messages{background:radial-gradient(circle at 50% 38%,rgba(123,72,184,.045),transparent 34%)}html[data-theme="light"] .message{color:#302538!important}html[data-theme="light"] .message+.message{border-color:rgba(70,45,88,.055)!important}html[data-theme="light"] .message.user .message-body{color:#fff;border-color:rgba(102,55,158,.15);background:linear-gradient(135deg,#8150bd,#674093)}html[data-theme="light"] .message.assistant .message-body{color:#302538}html[data-theme="light"] .message.assistant .message-body:before{color:#352509;background:linear-gradient(145deg,#f9da71,#edbc36)}html[data-theme="light"] .message-copy,html[data-theme="light"] .message-more>button{color:#7b6e84!important}html[data-theme="light"] .message-copy:hover,html[data-theme="light"] .message-more>button:hover{color:#4c355b!important;background:rgba(64,39,83,.06)!important}html[data-theme="light"] .message-menu{color:#31243a!important;border-color:rgba(60,36,82,.12)!important;background:#fff!important;box-shadow:0 18px 60px rgba(48,29,64,.16)!important}
html[data-theme="light"] .empty-state h2{background:linear-gradient(100deg,#382346 20%,#8151ba 72%,#b17b14);-webkit-background-clip:text;background-clip:text;color:transparent}html[data-theme="light"] .empty-state p{color:#74677e}html[data-theme="light"] .empty-features span{color:#62556d;border-color:rgba(60,36,82,.1);background:rgba(255,255,255,.64)}html[data-theme="light"] .empty-features span:hover{border-color:rgba(126,74,190,.2);background:#fff}
html[data-theme="light"] .composer{border-color:rgba(67,42,85,.14);background:rgba(255,255,255,.94);box-shadow:0 18px 55px rgba(55,33,72,.12),0 0 0 1px #fff inset}html[data-theme="light"] .composer:focus-within{border-color:rgba(126,74,190,.32);box-shadow:0 20px 65px rgba(55,33,72,.14),0 0 0 3px rgba(126,74,190,.07)}html[data-theme="light"] .composer textarea{color:#2d2135}html[data-theme="light"] .composer textarea::placeholder{color:#918697}html[data-theme="light"] .attach-button{color:#74677d}html[data-theme="light"] .attach-button:hover{background:rgba(68,42,87,.06)}
html[data-theme="light"] .subscription-modal,html[data-theme="light"] .feedback-modal,html[data-theme="light"] .support-modal{background:rgba(46,32,57,.34)}html[data-theme="light"] .subscription-card,html[data-theme="light"] .support-card{color:#2d2235;border-color:rgba(70,44,89,.12);background:linear-gradient(145deg,#fff,#f7f3fa);box-shadow:0 35px 110px rgba(48,29,64,.2)}html[data-theme="light"] .subscription-head h2,html[data-theme="light"] .subscription-hero strong,html[data-theme="light"] .plan-card h3,html[data-theme="light"] .duration-section>div:first-child span{color:#302238}html[data-theme="light"] .subscription-head p,html[data-theme="light"] .subscription-hero p{color:#75687e}html[data-theme="light"] .subscription-head{background:linear-gradient(180deg,#fbf8fc 72%,transparent)}html[data-theme="light"] .plan-card{border-color:rgba(69,42,88,.1);background:linear-gradient(155deg,#fff,#f6f1f9)}html[data-theme="light"] .plan-card ul{color:#5f5368}html[data-theme="light"] .plan-comparison{background:#fff}html[data-theme="light"] .plan-comparison td{color:#5e5167}html[data-theme="light"] .plan-comparison th{background:#f0e8f7}
html[data-theme="light"] .mode-bar{color:#877b8e}html[data-theme="light"] .code-pane,html[data-theme="light"] .preview-pane,html[data-theme="light"] .pane-header{color:#302538;border-color:rgba(60,36,82,.1);background:#fbf9fc}html[data-theme="light"] .code-output{color:#24452f;background:#f2f6f3}
@media(max-width:760px){html[data-theme="light"] .topbar{background:rgba(250,248,252,.95)}html[data-theme="light"] .chat-sidebar{background:#faf8fc!important}}

html[data-theme="light"] .auth-gate{color:#2c2134;background:radial-gradient(circle at 80% 0,rgba(142,89,220,.15),transparent 31rem),radial-gradient(circle at 10% 100%,rgba(225,178,51,.1),transparent 28rem),#f4f1f8}
html[data-theme="light"] .auth-card{color:#2c2134;border-color:rgba(68,42,87,.12);background:linear-gradient(150deg,rgba(255,255,255,.97),rgba(247,243,250,.97));box-shadow:0 35px 90px rgba(50,31,65,.16)}html[data-theme="light"] .auth-brand strong,html[data-theme="light"] .auth-card h2,html[data-theme="light"] .seo-intro h1,html[data-theme="light"] .seo-features h3{color:#302238}html[data-theme="light"] .auth-brand small,html[data-theme="light"] .auth-card p,html[data-theme="light"] .auth-card label{color:#74677d}html[data-theme="light"] .auth-card input{color:#2d2135;border-color:rgba(68,42,87,.13);background:rgba(72,43,92,.045)}html[data-theme="light"] .auth-card input:focus{border-color:rgba(126,74,190,.42);background:#fff}html[data-theme="light"] .auth-tabs{background:rgba(73,44,93,.045)}html[data-theme="light"] .auth-tabs button{color:#6d6076}html[data-theme="light"] .auth-tabs button.active{color:#fff;background:#7950a7}html[data-theme="light"] .auth-menu-button,html[data-theme="light"] .auth-support-button{color:#65546f;border-color:rgba(68,42,87,.12);background:#fff}
html[data-theme="light"] .seo-intro{color:#33263c;border-color:rgba(68,42,87,.11);background:rgba(255,255,255,.72);box-shadow:0 25px 75px rgba(50,31,65,.08)}html[data-theme="light"] .seo-intro>p,html[data-theme="light"] .seo-features p{color:#72657b}html[data-theme="light"] .seo-features article{border-color:rgba(68,42,87,.09);background:rgba(255,255,255,.72)}html[data-theme="light"] .seo-actions a{color:#54435f;border-color:rgba(68,42,87,.11);background:#fff}


/* Collapsible conversation drawer on every screen size */
.chat-panel{grid-template-columns:minmax(0,1fr)!important}
.chat-sidebar{position:absolute!important;inset-block:0!important;right:0!important;z-index:60!important;width:min(88vw,330px)!important;transform:translateX(calc(100% + 24px))!important;opacity:0!important;pointer-events:none!important;box-shadow:-24px 0 70px rgba(0,0,0,.52)!important}
.chat-panel.sidebar-open .chat-sidebar{transform:translateX(0)!important;opacity:1!important;pointer-events:auto!important}
.menu-toggle,.sidebar-close{display:grid!important}
.sidebar-scrim{display:block!important;position:absolute!important;inset:0!important;z-index:50!important;opacity:0!important;pointer-events:none!important}
.chat-panel.sidebar-open .sidebar-scrim{opacity:.72!important;pointer-events:auto!important}
(min-width:1100px){.messages{padding-right:max(24px,calc((100% - 860px)/2));padding-left:max(24px,calc((100% - 860px)/2))}}


/* Slightly denser sidebar to show more history */
.tool-list{gap:2px!important}
.tool-item{min-height:41px!important;padding-block:6px!important}
.chat-history{gap:4px!important}
.history-group{gap:3px!important}
.chat-history-item{margin:0!important}
.chat-tab{min-height:38px!important;padding-block:6px!important}

.admin-device-button{border:1px solid rgba(169,112,255,.25);background:rgba(169,112,255,.1);color:inherit;border-radius:9px;padding:7px 10px;cursor:pointer}.admin-devices-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.58);backdrop-filter:blur(5px)}.admin-devices-modal.hidden{display:none}.admin-devices-card{width:min(680px,100%);max-height:min(80vh,680px);overflow:auto;border:1px solid var(--kc-line);border-radius:18px;padding:18px;background:var(--kc-surface);box-shadow:0 30px 90px rgba(0,0,0,.35)}.device-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--kc-line)}.device-row small{display:block;color:var(--kc-muted);line-height:1.8;margin-top:4px;direction:rtl}.device-row button{border:0;border-radius:9px;padding:8px 11px;color:#fff;background:#b33b58;cursor:pointer}@media(max-width:600px){.device-row{align-items:flex-start;flex-direction:column}.device-row button{width:100%}}

/* Dedicated admin route presentation */
.admin-only-page .auth-gate,.admin-only-page .app-shell>header,.admin-only-page .app-shell>.chat-panel,.admin-only-page .subscription-modal,.admin-only-page .announcement-modal,.admin-only-page .admin-devices-modal{display:none!important}
.admin-only-page .admin-modal{display:block!important;position:static!important;inset:auto!important;background:transparent!important;padding:0!important}
.admin-only-page .admin-modal.hidden{display:block!important}
.admin-only-page .admin-login-card{display:block!important}
.admin-only-page .admin-panel{min-height:100dvh!important}

.admin-user-actions{display:flex;align-items:center;gap:6px}.admin-delete-button{border:0;border-radius:8px;padding:7px 9px;color:#fff;background:#a93652;cursor:pointer;font-size:11px}.admin-delete-button:hover{background:#c74a66}

.about-menu-link{display:block;padding:10px 12px;color:inherit;text-decoration:none}.deleted-user-row{display:flex;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid var(--kc-line)}.deleted-user-row span{color:var(--kc-muted);font-size:11px}

.about-menu-text{display:grid;gap:6px;padding:11px 12px;line-height:1.8}.about-menu-text strong{color:#f5c84b;font-size:13px}.about-menu-text span{color:inherit;font-size:11px}

.admin-only-page{margin:0!important;padding:0!important;min-height:100dvh!important;overflow:hidden!important;background:#0e0c16!important}.admin-only-page .app-shell{display:block!important;min-height:100dvh!important}.admin-only-page .admin-modal{min-height:100dvh!important}.admin-only-page .admin-login-card{margin:0 auto!important}
