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

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

html, body {
  height: 100%;
  background: var(--bg-base, #0d1117);
  color: var(--text-primary, #e6edf3);
  font-family: var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);
  font-size: var(--fs-base, 12px);
  line-height: 1.3;
  -webkit-font-smoothing: antialiased;
}

a { color: var(--status-info); text-decoration: none; }
a:hover { text-decoration: underline; }

button, input, select, textarea {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
}

button { cursor: pointer; border: none; background: none; }

input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]),
select,
textarea {
  background: var(--sl-surface-2, var(--bg-panel-alt, #1c2128));
  border: 1px solid var(--sl-border, var(--border-subtle, #30363d));
  color: var(--sl-text, var(--text-primary, #e6edf3));
  border-radius: var(--sl-radius, var(--cad-radius, 2px));
}

input::placeholder,
textarea::placeholder {
  color: var(--sl-muted, var(--text-muted, #8b949e));
}

.mono,
.cad-mono { font-family: var(--font-mono); }

.cad-data-row {
  font-size: var(--fs-sm);
  line-height: 1.15;
}

.hidden { display: none !important; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  border: 0;
}
