/* ML / AI app pages — align with landing index (style.css tokens) */
body.projects-app-shell {
  margin: 0;
  min-height: 100vh;
  background: var(--bg);
  color: var(--text);
  font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
  cursor: auto;
}

/* Landing CSS sets cursor:none on .theme-toggle / .hamburger — restore native pointer here */
body.projects-app-shell .theme-toggle,
body.projects-app-shell .hamburger {
  cursor: pointer;
}

.projects-app-main {
  max-width: 1080px;
  margin: 0 auto;
  padding: 6.5rem 1.25rem 3.5rem;
}

body.projects-app-shell .breadcrumb {
  --bs-breadcrumb-divider-color: var(--muted);
  color: var(--muted);
  font-size: 0.875rem;
}

body.projects-app-shell .breadcrumb-item a {
  color: var(--accent);
  text-decoration: none;
}

body.projects-app-shell .breadcrumb-item a:hover {
  text-decoration: underline;
}

body.projects-app-shell .breadcrumb-item.active {
  color: var(--text);
}

body.projects-app-shell .container {
  max-width: 100%;
}

/* Cards & surfaces */
body.projects-app-shell .card {
  background: var(--card-bg) !important;
  border-color: var(--border) !important;
  color: var(--text) !important;
  border-radius: 12px;
}

body.projects-app-shell .card-header {
  background: linear-gradient(135deg, #1f2759, #2b3a7a) !important;
  color: #fff !important;
  border-bottom: 0 !important;
}

body.projects-app-shell .text-muted {
  color: var(--muted) !important;
}

/* Forms */
body.projects-app-shell .form-label {
  color: var(--text) !important;
}

body.projects-app-shell .form-control,
body.projects-app-shell .form-select,
body.projects-app-shell input[type="text"],
body.projects-app-shell input[type="number"],
body.projects-app-shell input[type="password"],
body.projects-app-shell input[type="email"],
body.projects-app-shell select,
body.projects-app-shell textarea {
  background: var(--input-bg) !important;
  border-color: var(--border) !important;
  color: var(--text) !important;
}

body.projects-app-shell .form-control:focus,
body.projects-app-shell .form-select:focus {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 0.2rem rgba(56, 189, 248, 0.15) !important;
}

body.projects-app-shell .btn-primary {
  background: linear-gradient(135deg, #28428f, #3b5bdb) !important;
  border: none !important;
}

body.projects-app-shell .btn-primary:hover {
  filter: brightness(1.06);
}

body.projects-app-shell .btn-outline-primary {
  border-color: var(--accent) !important;
  color: var(--accent) !important;
}

body.projects-app-shell .btn-outline-secondary {
  border-color: var(--border) !important;
  color: var(--muted) !important;
}

body.projects-app-shell .btn-success {
  background: linear-gradient(135deg, #15803d, #22c55e) !important;
  border: none !important;
}

/* Tables */
body.projects-app-shell .table {
  color: var(--text) !important;
  --bs-table-bg: transparent;
}

body.projects-app-shell .table thead th {
  background: rgba(255, 255, 255, 0.04);
  border-color: var(--border) !important;
}

body.projects-app-shell .table td,
body.projects-app-shell .table th {
  border-color: var(--border) !important;
}

/* Alerts */
body.projects-app-shell .alert {
  border-radius: 10px;
  border: 1px solid var(--border);
}

body.projects-app-shell .alert-info {
  background: rgba(56, 189, 248, 0.1);
  color: var(--text);
  border-color: rgba(56, 189, 248, 0.25);
}

body.projects-app-shell .alert-danger {
  background: rgba(239, 68, 68, 0.12);
  color: #fecaca;
  border-color: rgba(239, 68, 68, 0.3);
}

/* Badges */
body.projects-app-shell .badge.bg-success {
  background: rgba(34, 197, 94, 0.25) !important;
  color: #86efac !important;
}

/* Data agent pages: links/buttons/inputs follow normal UA + Bootstrap cursors (body is auto above) */
body.projects-app-shell.ai-data-pages .btn,
body.projects-app-shell.ai-data-pages button:not(:disabled),
body.projects-app-shell.ai-data-pages [type="submit"]:not(:disabled),
body.projects-app-shell.ai-data-pages label,
body.projects-app-shell.ai-data-pages input[type="file"] {
  cursor: pointer;
}

body.projects-app-shell.ai-data-pages input[type="text"],
body.projects-app-shell.ai-data-pages input[type="search"],
body.projects-app-shell.ai-data-pages input[type="email"],
body.projects-app-shell.ai-data-pages input[type="number"],
body.projects-app-shell.ai-data-pages textarea,
body.projects-app-shell.ai-data-pages select {
  cursor: text;
}
