:root {
  --bg-base: #09090b;
  --bg-surface: #121215;
  --bg-elevated: #18181c;
  --bg-hover: #222228;
  --bg-active: #27272f;
  
  --border-subtle: rgba(255, 255, 255, 0.07);
  --border-default: rgba(255, 255, 255, 0.12);
  --border-strong: rgba(255, 255, 255, 0.24);
  
  --text-primary: #fafafa;
  --text-secondary: #a1a1aa;
  --text-muted: #71717a;
  
  --accent-primary: #fafafa;
  --accent-blue: #3b82f6;
  --accent-emerald: #10b981;
  --accent-amber: #f59e0b;
  --accent-rose: #f43f5e;

  --topbar-bg: rgba(9, 9, 11, 0.88);
  --cell-actions-bg: rgba(9, 9, 11, 0.94);
  --modal-overlay-bg: rgba(0, 0, 0, 0.72);
  --shadow-elevated: 0 20px 48px rgba(0, 0, 0, 0.6);

  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'JetBrains Mono', monospace;
}

[data-theme="light"] {
  --bg-base: #f1f4f9;
  --bg-surface: #ffffff;
  --bg-elevated: #e2e8f0;
  --bg-hover: #cbd5e1;
  --bg-active: #b8c4d4;

  --border-subtle: rgba(15, 23, 42, 0.09);
  --border-default: rgba(15, 23, 42, 0.16);
  --border-strong: rgba(15, 23, 42, 0.32);

  --text-primary: #090d16;
  --text-secondary: #334155;
  --text-muted: #64748b;

  --accent-primary: #090d16;
  --accent-blue: #2563eb;
  --accent-emerald: #059669;
  --accent-amber: #d97706;
  --accent-rose: #e11d48;

  --topbar-bg: rgba(255, 255, 255, 0.92);
  --cell-actions-bg: rgba(255, 255, 255, 0.96);
  --modal-overlay-bg: rgba(15, 23, 42, 0.45);
  --shadow-elevated: 0 20px 48px rgba(15, 23, 42, 0.14);
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  background-color: var(--bg-base);
  color: var(--text-primary);
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.4;
  min-height: 100vh;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  padding-bottom: 12px;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.topbar, .drawer-section, .workbench-card, .table-container, .center-inspector, .el-cell, .modal-window, .cmd-box {
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

/* Modern Adaptive Scrollbar */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: var(--bg-base);
}

::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--border-strong);
}

* {
  scrollbar-width: thin;
  scrollbar-color: var(--border-default) var(--bg-base);
}
