/* Trans Wrath - A dark mode variant of Trans Pride for Gitea */

@font-face {
  font-family: 'Vampyr';
  src: url('https://cdn.nhcarrigan.com/fonts/vampyr.ttf') format('truetype');
}

:root {
  --fonts-regular: "Vampyr" !important;
  --fonts-proportional: "Vampyr" !important;
  --fonts-monospace: "Vampyr" !important;
  --fonts-emoji: "Vampyr" !important;
  --is-dark-theme: true;

  /* Primary (pinks) */
  --color-primary: #ff6b94;            /* flag pink pop */
  --color-primary-dark: #ff3b6f;       /* deeper pink for hover/active */
  --color-primary-light: #ffb6c1;      /* soft pink for subtle accents */
  --color-primary-very-light: #3a1a2a; /* dim pink-plum for muted fills */

  /* Main Text & Background */
  --color-text: #ffe6ee;               /* near-white with pink warmth */
  --color-text-light: #ffd1dc;         /* lighter/paler text */
  --color-text-dark: #ffc0cb;          /* headings/links emphasis */
  --color-body: #2a0a18;               /* your existing plum base */

  /* UI (blues for contrast = trans stripes!) */
  --color-secondary: #3b6ea8;          /* medium trans-blue */
  --color-secondary-dark: #2d5a8b;     /* hover/active */
  --color-secondary-light: #4f84c2;    /* borders/badges */

  /* State Colors */
  --color-success: #87cefa;            /* sky blue success */
  --color-success-dark: #5dade2;
  --color-success-light: #add8e6;
  --color-danger: #ff4f7a;             /* pinkish red */
  --color-danger-dark: #ff2f66;
  --color-danger-light: #ff7fa1;
  --color-warning: #ffc3a0;            /* peach pairs nicely */
  --color-warning-dark: #ffb78f;
  --color-warning-light: #ffd4b7;
  --color-info: #5dade2;               /* bright info blue */
  --color-info-dark: #3f8ecb;
  --color-info-light: #87c7f1;

  /* Other UI Elements */
  --color-menu: #2a0a18;
  --color-card: #241624;               /* slightly darker than body */
  --color-markup-table-row: #2f1b30;   /* alternating rows */
  --color-markup-code-block: #2f1b30;  /* code blocks */
  --color-button: #ff6b94;             /* primary buttons = pink */
  --color-border: #3a2847;             /* muted plum border */
  --color-input-border: #4f84c2;       /* blue focus ring vibe */
  --color-input-background: #241624;
  --color-small-accent: #add8e6;       /* tiny blue sparkles */

  /* Diff Colors (trans-tinted, still readable) */
  --color-diff-add-line: #162235;      /* blue-tinted add */
  --color-diff-add-word: #203149;
  --color-diff-del-line: #2a1620;      /* pink-tinted delete */
  --color-diff-del-word: #3b2030;
  --color-diff-section: #1e1b2a;       /* neutral section bg */

  /* Code Syntax Highlighting (blue + pink duo) */
  --color-code-keyword: #1e90ff;       /* keywords = trans blue */
  --color-code-function: #ff3b6f;      /* functions = deep pink */
  --color-code-string: #ff9aac;        /* strings = soft pink */
  --color-code-number: #5dade2;        /* numbers = bright blue */
  --color-code-comment: #c79bb1;       /* gentle mauve comment */
  --color-code-type: #87cefa;          /* types = sky blue */

  --vscode-editor-background: #151a28; /* cooler dark editor well */
  --color-footer: #2a0a18;
  --color-nav-bg: #2a0a18;
}


/* Header */
.ui.menu.inverted {
  background-color: var(--color-secondary);
  color: var(--color-text);
}

.ui.secondary.menu .item {
  color: var(--color-text);
}

.ui.secondary.menu .active.item {
  background-color: var(--color-primary-very-light);
}

/* Repository header */
.repository.header {
  background-color: var(--color-menu);
}

/* Buttons */
.ui.primary.button {
  background-color: var(--color-primary);
}

.ui.primary.button:hover {
  background-color: var(--color-primary-dark);
}

.ui.basic.button {
  box-shadow: 0 0 0 1px var(--color-border) inset;
  color: var(--color-text) !important;
}

.ui.basic.button:hover {
  background-color: var(--color-primary-very-light) !important;
  color: var(--color-text-dark) !important;
}

/* Tabs */
.ui.tabular.menu .item {
  color: var(--color-text-light);
}

.ui.tabular.menu .active.item {
  background-color: var(--color-primary-very-light);
  color: var(--color-text);
  border-color: var(--color-border);
}

/* Tables */
.ui.table thead th {
  background: var(--color-menu);
  color: var(--color-text);
}

.ui.table {
  border-color: var(--color-border);
}

/* Form inputs */
.ui.input input:not([type="checkbox"]):not([type="radio"]) {
  background-color: var(--color-input-background);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

.ui.input input:not([type="checkbox"]):not([type="radio"]):focus {
  border-color: var(--color-primary);
}

/* Labels */
.ui.label {
  background-color: var(--color-primary-very-light);
  color: var(--color-text);
}

/* Markdown Content */
.markdown:not(code) {
  color: var(--color-text);
}

.markdown code, .markdown pre {
  background-color: var(--color-markup-code-block);
  border-color: var(--color-border);
}

/* Sidebar */
.ui.vertical.menu {
  background-color: var(--color-menu);
}

.ui.vertical.menu .item {
  color: var(--color-text);
}

.ui.vertical.menu .active.item {
  background-color: var(--color-primary-very-light);
}

/* Status tags */
.ui.green.label {
  background-color: var(--color-success) !important;
  color: var(--color-body) !important;
}

.ui.red.label {
  background-color: var(--color-danger) !important;
  color: var(--color-body) !important;
}

.ui.yellow.label {
  background-color: var(--color-warning) !important;
  color: var(--color-text-dark) !important;
}

.ui.blue.label {
  background-color: var(--color-info) !important;
  color: var(--color-body) !important;
}

/* Dashboard cards */
.dashboard-card {
  background-color: var(--color-card);
  border-color: var(--color-border);
}

/* Timeline and activities */
.timeline-item {
  border-color: var(--color-border);
}

.timeline-item .badge {
  background-color: var(--color-primary-very-light);
  color: var(--color-text);
}

/* Code diff view */
.diff-file-box .code-diff-split .add-code {
  background-color: var(--color-diff-add-line);
}

.diff-file-box .code-diff-split .del-code {
  background-color: var(--color-diff-del-line);
}

.diff-file-box .code-diff-split .add-code .add-line {
  background-color: var(--color-diff-add-word);
}

.diff-file-box .code-diff-split .del-code .del-line {
  background-color: var(--color-diff-del-word);
}

.monaco-editor, .monaco-diff-editor, .monaco-component, .monaco-editor-background, .monaco-editor .margin {
  background: var(--vscode-editor-background) !important;
}

.monaco-editor {
  --vscode-editor-selectionBackground: var(--color-primary) !important;
  --vscode-editor-inactiveSelectionBackground: var(--color-primary) !important;
  --vscode-editor-lineHighlightBackground: var(--color-primary) !important;
}

.monaco-editor .view-overlays .current-line {
  background-color: var(--color-primary) !important;
}

.monaco-editor .margin {
  background-color: transparent !important;
}

.monaco-editor .margin-view-overlays .current-line-margin {
  background-color: var(--color-primary) !important;
}

.active-line-number {
  background-color: transparent !important;
}
/* Scrollbar */
::-webkit-scrollbar-thumb {
  background: var(--color-primary-light);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--color-primary);
}

::-webkit-scrollbar-track {
  background: var(--color-primary-very-light);
}

body::before {
  background: url(https://cdn.nhcarrigan.com/background.png);
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 100%;
  z-index: -100;
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 1;
  pointer-events: none;
}

body::after {
  background: var(--color-body);
  opacity: 0.8;
  width: 100%;
  height: 100%;
  z-index: -50;
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
}

html {
  cursor: url('https://cdn.nhcarrigan.com/cursors/cursor.cur'), auto;
  font-family: "Vampyr";
}

a, button, .button, .dropdown {
  cursor: url('https://cdn.nhcarrigan.com/cursors/pointer.cur'), pointer !important;
}

#tree-nation-offset-website {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 885px) {
  #tree-nation-offset-website {
    display: none;
  }
}

footer {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--foreground);
  background-color: var(--background);
  position: fixed;
  bottom: 0;
  height: 75px;
  padding: 0 10px;
}

@media (max-width: 880px) {
  .page-footer {
    flex-direction: row;
  }
}

#navbar {
  position: fixed;
  top: 0;
  height: 50px;
  width: 100%;
  z-index: 1;
}

.page-content {
  margin-top: 50px;
}

*::selection {
  color: var(--color-body) !important;
  background: var(--color-text) !important;
}

@media screen and (max-width: 768px) {

.navbar-right > .item {
  justify-content: right !important;
  width: 50% !important;
  right: 0 !important;
  margin-right: 0 !important;
  margin-left: auto !important;
  background: var(--color-nav-bg) !important;
}

.navbar-left > .item {
  justify-content: left !important;
  width: 50% !important;
  left: 0 !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  background: var(--color-nav-bg) !important;
}
}

.home a {
  text-decoration: underline !important;
}

.home ul {
  list-style-type: none !important;
  padding-left: 0 !important;
}


#show-socials-button {
  background: none;
  border: none;
  cursor: url('https://cdn.nhcarrigan.com/cursors/pointer.cur'), pointer;
  color: var(--color-text);
  font-size: 1rem;
}
#show-socials-button > i {
  font-size: 1.5rem;
}
#social-list {
  position: absolute;
  bottom: 75px;
  left: 0;
  right: 0;
  width: 100vw;
  max-width: 400px;
  padding: 10px;
  background-color: var(--header_background);
  color: var(--color-text);
  border-radius: 10px;
  border: 1px solid var(--color-text);
  display: none;
  z-index: 1000;
}
.social-list-item {
  padding: 10px;
}
.social-list-item > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
}
.social-list-divider {
  border: 0.5px solid var(--color-text);
}
.social-list-item:hover {
  background-color: var(--color-text);
  color: var(--header_background);
}
#show-socials-button {
  background: none;
  border: none;
  cursor: url('https://cdn.nhcarrigan.com/cursors/pointer.cur'), pointer;
  color: var(--color-text);
  font-size: 1rem;
}
#show-socials-button > i {
  font-size: 1.5rem;
}
#social-list {
  position: absolute;
  bottom: 75px;
  left: 0;
  right: 0;
  width: 100vw;
  max-width: 400px;
  padding: 10px;
  background-color: var(--header_background);
  color: var(--color-text);
  border-radius: 10px;
  border: 1px solid var(--color-text);
  display: none;
  z-index: 1000;
}
.social-list-item {
  padding: 10px;
}
.social-list-item > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
}
.social-list-divider {
  border: 0.5px solid var(--color-text);
}
.social-list-item:hover {
  background-color: var(--color-text);
  color: var(--header_background);
}