/* ============================================================
   GRITSEEK VENTURES — SUPERSET DARK THEME
   Brand: #1226AA indigo, #0075C9 blue, #54C0E8 cyan,
          #70D44B green, #1C1F2A charcoal, #4100B4 purple
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Baloo+Bhai+2:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap');

/* Global font override */
body, html, * {
  font-family: 'Baloo Bhai 2', 'Inter', -apple-system, sans-serif !important;
}

code, pre, .code, .monospace, .ace_editor * {
  font-family: 'JetBrains Mono', 'Fira Code', monospace !important;
}

/* Dark background */
body {
  background-color: #12141C !important;
  color: #E0E0E8 !important;
}

/* Navbar */
.navbar, .navbar-default, header nav, .css-1o3pk1a {
  background-color: #1C1F2A !important;
  border-bottom: 1px solid #2A2D3A !important;
}

.navbar .navbar-brand img {
  max-height: 32px !important;
}

.navbar-brand span, .navbar a, nav a {
  color: #54C0E8 !important;
}

/* Sidebar */
.ant-layout-sider, .css-sidebar, [class*="sidebar"] {
  background-color: #1C1F2A !important;
}

/* Main content area */
.ant-layout-content, main, .dashboard-content, #app {
  background-color: #12141C !important;
}

/* Cards & panels */
.ant-card, .panel, .card, .slice_container, .chart-container,
.dashboard-component, .dragdroppable, [class*="Card"] {
  background-color: #1C1F2A !important;
  border: 1px solid #2A2D3A !important;
  border-radius: 8px !important;
  color: #E0E0E8 !important;
}

/* Tables */
.ant-table, table, .table, .reactable-data td, .data-table {
  background-color: #1C1F2A !important;
  color: #E0E0E8 !important;
}

.ant-table-thead > tr > th, thead th {
  background-color: #252938 !important;
  color: #54C0E8 !important;
  border-bottom: 2px solid #1226AA !important;
  font-weight: 600 !important;
}

.ant-table-tbody > tr > td, tbody td {
  border-bottom: 1px solid #2A2D3A !important;
  color: #C0C4D4 !important;
}

.ant-table-tbody > tr:hover > td {
  background-color: #252938 !important;
}

/* Buttons */
.ant-btn-primary, .btn-primary, button[class*="primary"] {
  background: linear-gradient(135deg, #1226AA 0%, #0075C9 100%) !important;
  border: none !important;
  color: white !important;
  border-radius: 6px !important;
}

.ant-btn-primary:hover {
  background: linear-gradient(135deg, #0075C9 0%, #54C0E8 100%) !important;
}

/* Links */
a, .ant-breadcrumb a, .ant-menu-item a {
  color: #54C0E8 !important;
}

a:hover {
  color: #70D44B !important;
}

/* Charts background */
.slice_container, .chart-slice, .superset-legacy-chart {
  background-color: #1C1F2A !important;
}

/* Filters bar */
.filter-bar, .css-filter-bar, [class*="FilterBar"] {
  background-color: #1C1F2A !important;
  border-right: 1px solid #2A2D3A !important;
}

/* Inputs */
.ant-input, .ant-select-selector, input, select, textarea {
  background-color: #252938 !important;
  border: 1px solid #2A2D3A !important;
  color: #E0E0E8 !important;
}

.ant-input:focus, .ant-input:hover {
  border-color: #0075C9 !important;
  box-shadow: 0 0 0 2px rgba(0, 117, 201, 0.2) !important;
}

/* Dropdowns */
.ant-select-dropdown, .ant-dropdown-menu, .ant-popover-inner {
  background-color: #252938 !important;
  border: 1px solid #2A2D3A !important;
}

/* Tabs */
.ant-tabs-tab-active, .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {
  color: #54C0E8 !important;
}

.ant-tabs-ink-bar {
  background: #1226AA !important;
}

/* Modal */
.ant-modal-content, .ant-modal-header {
  background-color: #1C1F2A !important;
  border: 1px solid #2A2D3A !important;
  color: #E0E0E8 !important;
}

.ant-modal-title {
  color: #54C0E8 !important;
}

/* Tags / badges */
.ant-tag {
  background-color: #252938 !important;
  border: 1px solid #4100B4 !important;
  color: #C0C4D4 !important;
}

/* Toast / messages */
.ant-message-notice-content {
  background-color: #252938 !important;
  color: #E0E0E8 !important;
  border: 1px solid #2A2D3A !important;
}

/* Tooltips */
.ant-tooltip-inner {
  background-color: #252938 !important;
  color: #E0E0E8 !important;
}

/* Dashboard tab bar */
.dashboard-component-tabs .ant-tabs-nav {
  background-color: #1C1F2A !important;
}

/* Empty state */
.ant-empty-description {
  color: #808498 !important;
}

/* Scrollbar */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: #12141C; }
::-webkit-scrollbar-thumb { background: #2A2D3A; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #3A3D4A; }

/* Menu items */
.ant-menu-item, .ant-menu-submenu-title {
  color: #C0C4D4 !important;
}

.ant-menu-item:hover, .ant-menu-item-selected {
  color: #54C0E8 !important;
  background-color: rgba(18, 38, 170, 0.15) !important;
}

/* Breadcrumbs */
.ant-breadcrumb {
  color: #808498 !important;
}

/* Pagination */
.ant-pagination-item a {
  color: #C0C4D4 !important;
}

.ant-pagination-item-active {
  border-color: #1226AA !important;
}

.ant-pagination-item-active a {
  color: #54C0E8 !important;
}

/* Page title */
h1, h2, h3, .header-title, .editable-title {
  color: #E0E0E8 !important;
}

/* Brand footer */
.footer-brand::after {
  content: "Powered by Gritseek Ventures Ltd";
  color: #808498;
  font-size: 11px;
}

/* Superset specific overrides */
#app-menu, [class*="Menu"] {
  background-color: #1C1F2A !important;
}

/* Chart title */
.header-title .editable-title input {
  color: #54C0E8 !important;
}

/* Welcome page */
.ant-collapse, .ant-collapse-content {
  background-color: #1C1F2A !important;
  border-color: #2A2D3A !important;
  color: #E0E0E8 !important;
}

/* Success/warning/error states */
.ant-alert-success { background-color: rgba(112, 212, 75, 0.1) !important; border-color: #70D44B !important; }
.ant-alert-warning { background-color: rgba(255, 183, 77, 0.1) !important; border-color: #FFB74D !important; }
.ant-alert-error { background-color: rgba(239, 68, 68, 0.1) !important; border-color: #EF4444 !important; }
