:root {
  --brand: #4f46e5;
  --brand-d: #3730a3;
  --brand-l: #e0e7ff;
  --brand-mid: #6366f1;
  --brand-accent: #7c3aed;
  --brand-light: #8b5cf6;
  --sidebar-bg: #1e1b4b;
  --sidebar-mid: #312e81;
  --gradient-btn: linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);
  --gradient-logo: linear-gradient(135deg, #6366f1, #8b5cf6);
  --gradient-login: linear-gradient(145deg, #1e1b4b 0%, #312e81 35%, #1e40af 70%, #6366f1 100%);
  --nav-active: rgba(99,102,241,0.35);
  --focus: #6366f1;
  --focus-ring: rgba(99,102,241,0.1);
  --btn-shadow: rgba(79,70,229,0.35);
  --md-accent: #4f46e5;
  --md-accent-soft: #e0e7ff;
  --md-accent-line: #8b5cf6;
}

/* Sidebar & navigation */
.sidebar { background: var(--sidebar-bg) !important; }
.sidebar-brand .logo { background: #fff !important; }
.nav-link.active { background: var(--nav-active) !important; }
.user-avatar,
.profile-avatar-big,
.logo-upload-preview .placeholder { background: #fff !important; }

/* Buttons & CTAs */
.btn-new-doc,
.btn-save,
.btn-login,
.btn-submit,
.btn-create,
.btn-create-doc,
.btn-primary-theme,
.theme-btn-primary,
.profile-save-btn,
.chat-send-btn,
.ai-panel-send,
.sign-panel .btn-primary,
.docs-sidebar .btn-send,
button.btn-ai-open,
.btn-sidebar-submit { background: var(--gradient-btn) !important; }

.btn-new-doc:hover,
.btn-login:hover,
.btn-save:hover,
.theme-btn-primary:hover { box-shadow: 0 8px 20px var(--btn-shadow) !important; }

/* Login */
.left-panel { background: var(--gradient-login) !important; }
.footer-note a { color: var(--brand-mid) !important; }

/* Focus states */
input:focus,
textarea:focus,
select:focus,
.form-group input:focus,
.user-search-input:focus,
.chat-input-row textarea:focus { border-color: var(--focus) !important; }
input:focus,
textarea:focus,
.form-group input:focus { box-shadow: 0 0 0 4px var(--focus-ring) !important; }

/* Docs / editor UI */
.chat-msg.assistant .chat-avatar,
.ai-modal-icon,
.theme-gradient-icon { background: var(--gradient-btn) !important; }
.sign-mode-btn.active { background: var(--brand) !important; color: #fff !important; }
.modal-tab-btn.active { color: var(--brand) !important; border-bottom-color: var(--brand-mid) !important; }
.modal-tab-btn { border-bottom: 2px solid transparent; }
.docs-right-panel-header { background: var(--sidebar-bg) !important; border-color: var(--sidebar-mid) !important; }
.btn-dashboard { background: var(--sidebar-bg) !important; color: #fff !important; border-color: var(--sidebar-mid) !important; }
.btn-dashboard:hover { background: var(--sidebar-mid) !important; }

/* Utility classes */
.theme-gradient-header { background: var(--gradient-btn) !important; color: #fff !important; }
.theme-text-brand { color: var(--brand) !important; }
.theme-link { color: var(--brand) !important; font-weight: 600; }