:root {
  --surface: #f7f7f7;
  --border: #e0e0e0;
  --text: #1e1e1e;
  --text-dim: #888888;
  --accent: #2a7ae2;
  --accent-dim: #2a7ae215;
  --yellow: #f9ab00;
}

/* R Project files */
.fa-brands.fa-r-project {
  color: #276DC3 !important;
}

/* JavaScript files */
.fa-brands.fa-js {
  color: #daa520 !important;
}

/* CSS files */
.fa-brands.fa-css3 {
  color: #2965f1 !important;
}

/* Database/SQL files */
.fa-solid.fa-database {
  color: #5e2a7e !important;
}

/* HTML files */
.fa-brands.fa-html5 {
  color: #e34c26 !important;
}

/* Python files */
.fa-brands.fa-python {
  color: #3776ab !important;
}

/* Markdown files */
.fa-brands.fa-markdown {
  color: #083fa1 !important;
}

/* Code files (JSON, XML, YAML) */
.fa-solid.fa-file-code {
  color: #6f42c1 !important;
}

/* Text files */
.fa-solid.fa-file-text {
  color: #6c757d !important;
}

/* PDF files */
.fa-solid.fa-file-pdf {
  color: #dc3545 !important;
}

/* CSV files */
.fa-solid.fa-file-csv {
  color: #28a745 !important;
}

/* Excel files */
.fa-solid.fa-file-excel {
  color: #1d6f42 !important;
}

/* Word files */
.fa-solid.fa-file-word {
  color: #2b579a !important;
}

/* PowerPoint files */
.fa-solid.fa-file-powerpoint {
  color: #d24726 !important;
}

/* Default file icon */
.fa-solid.fa-file {
  color: #6c757d !important;
}

/* Folder icons */
.fa.fa-folder,
.fa.fa-folder-open {
  color: #ffc107 !important;
}

.button-tab {
  background: transparent;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 3px 12px 2px;
  margin: 0 2px 0 0;
  cursor: pointer;
  font-size: 12px;
  color: #333;
  height: 30px;
  width: 90px;
  transition: border-color 0.2s;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.button-tab:hover {
  background-color: rgba(0, 0, 0, 0.03);
}

.button-tab.active {
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom-color: #2c3e50;
  font-weight: 500;
}

.button-tab:focus {
  outline: none;
}

.viewer-content {
  height: 100%;
  overflow: none;
}

.viewer-content:not(.active) {
  display: none;
}

/* Session grid - remove object hover */
.remove-object:hover {
  color: #dc3545 !important;
  background: #fee2e2 !important;
}


/* Argument hint tooltip */
#arg-hint {
  display: none;
  position: fixed;
  z-index: 10000;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 6px 10px;
  font-family: monospace;
  font-size: 12px;
  color: var(--text);
  pointer-events: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  max-width: 500px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#arg-hint .fn-name {
  color: var(--accent);
  font-weight: 600;
}

#arg-hint .current-arg {
  color: var(--yellow);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}