/* ── RunTK Shared Base ── */

/* Design tokens (merged superset from all tools) */
:root {
  color-scheme: dark;
  --bg:#0d1117;
  --surface:#161b22;
  --surface2:#010409;
  --border:#30363d;
  --borderMuted:#21262d;
  --text:#e6edf3;
  --muted:#7d8590;
  --muted2:#6e7681;
  --accent:#58a6ff;
  --accentEmph:#1f6feb;
  --success:#3fb950;
  --successEmph:#238636;
  --warn:#d29922;
  --danger:#f85149;
  --purple:#a371f7;
  --btn:#21262d;
  --btnHover:#30363d;
  --radiusMd:6px;
  --radiusLg:12px;
  --safeT:env(safe-area-inset-top,0px);
  --safeB:env(safe-area-inset-bottom,0px);
  --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "SF Mono", monospace;
  --sans: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;

  /* Semantic aliases */
  --color-canvas-default: var(--bg);
  --color-canvas-subtle: var(--surface);
  --color-canvas-inset: var(--surface2);
  --color-border-default: var(--border);
  --color-border-muted: var(--borderMuted);
  --color-fg-default: var(--text);
  --color-fg-muted: var(--muted);
  --color-fg-subtle: var(--muted2);
  --color-accent-fg: var(--accent);
  --color-accent-emphasis: var(--accentEmph);
  --color-success-fg: var(--success);
  --color-success-emphasis: var(--successEmph);
  --color-attention-fg: var(--warn);
  --color-attention-emphasis: #9e6a03;
  --color-danger-fg: var(--danger);
  --color-danger-emphasis: #da3633;
  --color-done-fg: var(--purple);
  --color-severe-fg: #db6d28;
  --color-btn-bg: var(--btn);
  --color-btn-border: #363b42;
  --color-btn-hover-bg: var(--btnHover);
  --color-btn-hover-border: #8b949e;
  --font-family: var(--sans);
  --radius: var(--radiusLg);
  --radius-md: var(--radiusMd);
  --radius-lg: var(--radiusLg);
  --radius-sm: var(--radiusMd);
}

/* Light theme (GitHub-inspired) */
:root[data-theme="light"] {
  color-scheme: light;
  --bg:#ffffff;
  --surface:#f6f8fa;
  --surface2:#f6f8fa;
  --border:#d0d7de;
  --borderMuted:#d8dee4;
  --text:#1f2328;
  --muted:#636c76;
  --muted2:#8c959f;
  --accent:#0969da;
  --accentEmph:#0550ae;
  --success:#1a7f37;
  --successEmph:#2da44e;
  --warn:#9a6700;
  --danger:#d1242f;
  --purple:#8250df;
  --btn:#f6f8fa;
  --btnHover:#eaeef2;

  --color-attention-emphasis: #bf8700;
  --color-danger-emphasis: #cf222e;
  --color-severe-fg: #bc4c00;
  --color-btn-border: #d0d7de;
  --color-btn-hover-border: #8c959f;
}

@media (prefers-color-scheme: light) {
  :root:not([data-theme="dark"]) {
    color-scheme: light;
    --bg:#ffffff;
    --surface:#f6f8fa;
    --surface2:#f6f8fa;
    --border:#d0d7de;
    --borderMuted:#d8dee4;
    --text:#1f2328;
    --muted:#636c76;
    --muted2:#8c959f;
    --accent:#0969da;
    --accentEmph:#0550ae;
    --success:#1a7f37;
    --successEmph:#2da44e;
    --warn:#9a6700;
    --danger:#d1242f;
    --purple:#8250df;
    --btn:#f6f8fa;
    --btnHover:#eaeef2;

    --color-attention-emphasis: #bf8700;
    --color-danger-emphasis: #cf222e;
    --color-severe-fg: #bc4c00;
    --color-btn-border: #d0d7de;
    --color-btn-hover-border: #8c959f;
  }
}

/* Reset */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; -webkit-tap-highlight-color: transparent; }

html, body { height: 100%; background: var(--bg); color: var(--text); }

body {
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
