/* XENOHIVE: the Nostromo ship-console look of xenohive.io for Gitea.
   Built on Gitea's own dark theme; only colours, fonts and the scanlines
   change, so a Gitea upgrade keeps working. Installed by bootstrap from
   server-config etc/gitea/custom/. */
@import url("./theme-gitea-dark.css");

gitea-theme-meta-info {
  --theme-display-name: "Xenohive";
}

:root {
  --is-dark-theme: true;
  --fonts-override: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --color-primary: #e8c27a;
  --color-primary-contrast: #0b0d0a;
  --color-primary-dark-1: #eac887;
  --color-primary-dark-2: #edce95;
  --color-primary-dark-3: #efd6a5;
  --color-primary-dark-4: #f2ddb6;
  --color-primary-dark-5: #f6e7ca;
  --color-primary-dark-6: #faf2e2;
  --color-primary-dark-7: #fdfaf4;
  --color-primary-light-1: #cdac6d;
  --color-primary-light-2: #b3975f;
  --color-primary-light-3: #988152;
  --color-primary-light-4: #7a6842;
  --color-primary-light-5: #564b30;
  --color-primary-light-6: #332e1e;
  --color-primary-light-7: #1a1a12;
  --color-primary-alpha-10: #e8c27a1a;
  --color-primary-alpha-20: #e8c27a33;
  --color-primary-alpha-30: #e8c27a4c;
  --color-primary-alpha-40: #e8c27a66;
  --color-primary-alpha-50: #e8c27a80;
  --color-primary-alpha-60: #e8c27a99;
  --color-primary-alpha-70: #e8c27ab2;
  --color-primary-alpha-80: #e8c27acc;
  --color-primary-alpha-90: #e8c27ae6;
  --color-primary-hover: var(--color-primary-dark-1);
  --color-primary-active: var(--color-primary-dark-2);
  --color-logo: #e8c27a;

  /* surfaces: the near-black of the front page, amber rules */
  --color-body: #0b0d0a;
  --color-nav-bg: #0e100c;
  --color-secondary-nav-bg: #0e100c;
  --color-footer: #0e100c;
  --color-box-header: #12140f;
  --color-box-body: #0d0f0b;
  --color-box-body-highlight: #161911;
  --color-menu: #10120d;
  --color-card: #10120d;
  --color-input-background: #0d0f0b;
  --color-secondary-bg: #1d1a10;
  --color-secondary: #4a3a1c;
  --color-input-border: #4a3a1c;
  --color-light-border: #4a3a1c80;
  --color-hover: #e8c27a14;
  --color-active: #e8c27a24;
  --color-hover-opaque: #17170f;

  /* text: warm light for reading, amber for what matters */
  --color-text-dark: #f3e3bf;
  --color-text: #e3d3ad;
  --color-text-light: #cdb88c;
  --color-text-light-1: #b49e70;
  --color-text-light-2: #9c8659;
  --color-text-light-3: #8c7445;
  --color-input-text: #e3d3ad;
  --color-nav-text: #e8c27a;
}

/* the front page's scanlines */
body {
  background-image: repeating-linear-gradient(0deg, rgba(0, 0, 0, .18) 0 1px, transparent 1px 3px);
}

/* console feel: headings and the navbar spaced out and upper case */
.ui.header, h1, h2, h3, #navbar .item, .repo-header .flex-text-block a {
  letter-spacing: .08em;
}
#navbar {
  border-bottom: 1px solid #4a3a1c;
}
a, .ui.breadcrumb a {
  color: #e8c27a;
}
.ui.primary.button, .ui.primary.buttons .button {
  color: #0b0d0a;
}

/* ---- the landing page (templates/home.tmpl) ---- */
.xh-home { display: grid; place-items: center; text-align: center; padding: 72px 24px 48px; }
.xh-home svg.xh-hive { width: 132px; height: auto; margin-bottom: 26px; }
.xh-hive path { fill: none; stroke: #e8c27a; stroke-width: 2; }
.xh-hive path.dim { stroke: #4a3a1c; }
@media (prefers-reduced-motion: no-preference) {
  .xh-hive path.pulse { animation: xh-pulse 3.2s ease-in-out infinite; }
  @keyframes xh-pulse { 50% { stroke: #8c7445; } }
}
.xh-home h1 { font-size: clamp(28px, 6vw, 42px); font-weight: normal; letter-spacing: .45em; margin: 0 0 6px; padding-left: .45em; color: #e8c27a; }
.xh-home .xh-sub { color: #8c7445; letter-spacing: .25em; text-transform: uppercase; font-size: 12px; margin: 0; }
.xh-home nav { margin-top: 30px; display: flex; gap: 22px; justify-content: center; flex-wrap: wrap; }
.xh-home nav a { letter-spacing: .15em; font-size: 13px; text-transform: uppercase; border-bottom: 1px solid #4a3a1c; text-decoration: none; }
.xh-home nav a:hover { border-color: #e8c27a; text-decoration: none; }
.xh-repos { width: min(760px, 100%); margin: 48px auto 0; text-align: left; }
.xh-repos .xh-label { color: #8c7445; font-size: 11px; letter-spacing: .25em; text-transform: uppercase; border-bottom: 1px solid #4a3a1c; padding-bottom: 6px; margin-bottom: 4px; }
.xh-repo { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 16px; padding: 10px 0; border-bottom: 1px solid #4a3a1c55; }
.xh-repo a { font-size: 14px; letter-spacing: .05em; }
.xh-repo .xh-when { color: #8c7445; font-size: 11px; letter-spacing: .1em; white-space: nowrap; }
.xh-repo .xh-desc { grid-column: 1 / -1; color: #b49e70; font-size: 12px; }
.xh-empty { color: #8c7445; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; padding: 14px 0; }
