/* Shared 0xrsydn presentation for anonymous and authenticated Forgejo views. */

@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url('../fonts/JetBrainsMono-Variable.woff2') format('woff2');
}

@font-face {
  font-family: 'JetBrains Mono';
  font-style: italic;
  font-weight: 100 800;
  font-display: swap;
  src: url('../fonts/JetBrainsMono-VariableItalic.woff2') format('woff2');
}

:root {
  --fonts-override: 'JetBrains Mono', monospace;
  --fonts-monospace: 'JetBrains Mono', monospace;
  --public-content-width: 1280px;
  --public-radius: 0.25rem;
  --public-accent: #fbab51;
  --public-border: #f8fafc;
  --public-surface: #0b1220;
  --public-overlay-surface: #111827;
  --public-code-border: #334155;
  --public-code-surface: #111827;

  --color-background: #020817;
  --color-foreground: #f8fafc;
  --color-body: #020817;
  --color-header: #020817;
  --color-footer: #020817;
  --color-box-header: #050b16;
  --color-box-body: #020817;
  --color-box-body-highlight: var(--public-surface);
  --color-card: var(--public-surface);
  --color-menu: #020817;
  --color-shadow: #000000;

  --color-primary: #f8fafc;
  --color-primary-dark-1: #e2e8f0;
  --color-primary-dark-2: #cbd5e1;
  --color-primary-dark-3: #94a3b8;
  --color-primary-dark-4: #64748b;
  --color-primary-light-1: #f8fafc;
  --color-primary-light-2: #e2e8f0;
  --color-primary-light-3: #cbd5e1;
  --color-primary-light-4: #94a3b8;

  --color-secondary: var(--public-overlay-surface);
  --color-secondary-dark-1: #0f172a;
  --color-secondary-dark-2: #0b1220;
  --color-secondary-dark-3: #050b16;
  --color-secondary-dark-4: #020817;
  --color-secondary-light-1: #1e293b;
  --color-secondary-light-2: #334155;
  --color-secondary-light-3: #475569;
  --color-secondary-light-4: #64748b;
  --color-secondary-light-5: #94a3b8;

  --color-text: #f8fafc;
  --color-text-dark: #f8fafc;
  --color-text-light: #cbd5e1;
  --color-text-light-1: #cbd5e1;
  --color-text-light-2: #94a3b8;
  --color-text-light-3: #64748b;
  --color-link: #f8fafc;
  --color-link-hover: var(--public-accent);
  --color-accent: #f8fafc;

  --color-input-background: #050b16;
  --color-input-border: var(--public-border);
  --color-input-border-hover: var(--public-accent);
  --color-input-text: #f8fafc;
  --color-button: var(--public-overlay-surface);
  --color-nav-bg: #020817;
  --color-nav-text: #f8fafc;
  --color-nav-hover-bg: var(--public-overlay-surface);
  --color-border: var(--public-border);
  --color-secondary-border: var(--public-border);
  --color-label-bg: #f8fafc;
  --color-label-text: #020817;

  --color-code-bg: var(--public-code-surface);
  --color-code-sidebar-bg: #050b16;
  --color-diff-removed-word-bg: #7f1d1d;
  --color-diff-added-word-bg: #14532d;
  --color-diff-removed-row-bg: #450a0a;
  --color-diff-moved-row-bg: #172554;
  --color-diff-added-row-bg: #052e16;
  --color-diff-removed-row-border: #ef4444;
  --color-diff-moved-row-border: #3b82f6;
  --color-diff-added-row-border: #22c55e;

  color-scheme: dark;
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--color-body);
  color: var(--color-text);
  font-family: 'JetBrains Mono', monospace;
}

.code-view,
pre,
code,
.CodeMirror,
.monaco-editor {
  font-family: 'JetBrains Mono', monospace !important;
}

::selection {
  background: var(--public-accent);
  color: #020817;
}

[data-tippy-root] .tippy-box {
  background: var(--public-overlay-surface) !important;
  border: 1px solid var(--public-border) !important;
  border-radius: var(--public-radius) !important;
  box-shadow: none !important;
  color: var(--color-text) !important;
  opacity: 1 !important;
}

[data-tippy-root] .tippy-box * {
  color: var(--color-text) !important;
}

[data-tippy-root] .tippy-arrow {
  color: var(--public-overlay-surface) !important;
}

.file-view.markup.markdown pre.code-block {
  background: var(--public-code-surface);
  border: 1px solid var(--public-code-border);
  border-radius: var(--public-radius);
  color: var(--color-text);
}

.file-view.markup.markdown pre.code-block > code {
  background: transparent;
  color: inherit;
}

.file-view.markup.markdown pre.code-block > .code-copy.ui.button {
  background: var(--public-code-surface);
  border-left: 1px solid var(--public-code-border);
  color: var(--color-text);
}

.file-view.markup.markdown pre.code-block > .code-copy.ui.button:hover {
  color: var(--public-accent);
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
