/* =========================================================
   git.mehksn.net — adaptive Quantum-inspired theme
   ========================================================= */

:root {
  --meh-bg: #05070f;
  --meh-bg-2: #0a0f1d;
  --meh-card: rgba(17, 24, 39, .72);
  --meh-card-solid: #111827;
  --meh-border: rgba(148, 163, 184, .16);
  --meh-text: #e6edf7;
  --meh-muted: #94a3b8;
  --meh-accent: #4f7cff;
  --meh-accent-2: #8b5cf6;
  --meh-glow: rgba(79, 124, 255, .32);
  --meh-gradient-border: linear-gradient(135deg, rgba(79,124,255,.65), rgba(139,92,246,.45), rgba(56,189,248,.35));
}

/* Светлая тема */
@media (prefers-color-scheme: light) {
  :root {
    --meh-bg: #f6f8fc;
    --meh-bg-2: #ffffff;
    --meh-card: rgba(255, 255, 255, .82);
    --meh-card-solid: #ffffff;
    --meh-border: rgba(15, 23, 42, .10);
    --meh-text: #0f172a;
    --meh-muted: #55637a;
    --meh-glow: rgba(79, 124, 255, .18);
  }
}

/* Если Forgejo явно переключает тему атрибутом */
[data-theme="light"] {
  --meh-bg: #f6f8fc;
  --meh-bg-2: #ffffff;
  --meh-card: rgba(255, 255, 255, .82);
  --meh-card-solid: #ffffff;
  --meh-border: rgba(15, 23, 42, .10);
  --meh-text: #0f172a;
  --meh-muted: #55637a;
  --meh-glow: rgba(79, 124, 255, .18);
}

body {
  background:
    radial-gradient(900px 500px at 85% -5%, rgba(79, 124, 255, .14), transparent 60%),
    radial-gradient(750px 450px at 5% 105%, rgba(139, 92, 246, .12), transparent 60%),
    var(--meh-bg) !important;
  color: var(--meh-text) !important;
}

/* Шапка */
#navbar {
  background: color-mix(in srgb, var(--meh-bg) 88%, transparent) !important;
  border-bottom: 1px solid var(--meh-border) !important;
  backdrop-filter: blur(14px);
}

#navbar .item {
  color: var(--meh-text) !important;
  border-radius: .55rem !important;
  transition: color .18s ease, background-color .18s ease !important;
}

#navbar .item:hover,
#navbar .item.active {
  color: var(--meh-text) !important;
  background: rgba(79, 124, 255, .12) !important;
}

#navbar .item[href*="/user/login"] {
  background: linear-gradient(135deg, var(--meh-accent), var(--meh-accent-2)) !important;
  color: #fff !important;
  border-radius: .65rem !important;
  padding: .45rem 1rem !important;
  margin-left: .5rem !important;
  box-shadow: 0 8px 24px var(--meh-glow);
}

/* Hero */
.forgejo-landing {
  position: relative;
  padding: 6rem 1rem 6rem !important;
  overflow: hidden;
  background:
    radial-gradient(1100px 550px at 82% -10%, rgba(79, 124, 255, .20), transparent 60%),
    radial-gradient(850px 500px at 8% 110%, rgba(139, 92, 246, .16), transparent 60%),
    linear-gradient(170deg, var(--meh-bg) 0%, var(--meh-bg-2) 55%, var(--meh-bg) 100%) !important;
  color: var(--meh-text) !important;
  border-bottom: 1px solid var(--meh-border);
}

.forgejo-landing::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(var(--meh-border) 1px, transparent 1px),
    linear-gradient(90deg, var(--meh-border) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: radial-gradient(circle at center, black, transparent 75%);
  pointer-events: none;
  opacity: .45;
}

.forgejo-landing .ui.grid {
  position: relative;
  z-index: 1;
  align-items: center;
}

.forgejo-landing h1 {
  font-size: 3.6rem !important;
  font-weight: 800 !important;
  letter-spacing: -.035em !important;
  margin-bottom: .25rem !important;
  background: linear-gradient(120deg, var(--meh-text) 25%, var(--meh-accent) 70%, var(--meh-accent-2) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
}

.forgejo-landing h2 {
  font-size: 1.45rem !important;
  font-weight: 500 !important;
  color: var(--meh-text) !important;
}

.forgejo-landing .landing-subtitle {
  max-width: 560px;
  margin: 1.1rem 0 2.2rem !important;
  font-size: 1.08rem;
  line-height: 1.7;
  color: var(--meh-muted) !important;
}

.forgejo-landing .ui.label {
  background: rgba(79, 124, 255, .12) !important;
  color: var(--meh-text) !important;
  border: 1px solid rgba(79, 124, 255, .35) !important;
  border-radius: 999px !important;
  padding: .5rem .85rem !important;
  margin-bottom: 1.35rem !important;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.forgejo-landing .ui.primary.button {
  background: linear-gradient(135deg, var(--meh-accent), var(--meh-accent-2)) !important;
  border: none !important;
  border-radius: .75rem !important;
  box-shadow: 0 18px 45px var(--meh-glow);
}

/* Стеклянная панель статистики */
.meh-stats-panel {
  position: relative;
  padding: 1.75rem !important;
  border-radius: 1.25rem !important;
  background: var(--meh-card) !important;
  border: 1px solid var(--meh-border) !important;
  backdrop-filter: blur(18px);
  box-shadow: 0 25px 70px rgba(2, 6, 23, .28);
}

.meh-stats-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: var(--meh-gradient-border);
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  opacity: .8;
}

.meh-stats-panel .meh-stat {
  display: flex;
  align-items: center;
  gap: .9rem;
  padding: .85rem 0;
}

.meh-stats-panel .meh-stat + .meh-stat {
  border-top: 1px solid var(--meh-border);
}

.meh-stats-panel .meh-stat i {
  font-size: 1.25rem;
  color: var(--meh-accent);
}

.meh-stats-panel .meh-stat-value {
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.1;
  color: var(--meh-text);
}

.meh-stats-panel .meh-stat-label {
  font-size: .82rem;
  color: var(--meh-muted);
}

/* Карточки с градиентной рамкой */
.meh-card {
  position: relative;
  height: 100%;
  padding: 1.8rem !important;
  border-radius: 1.1rem !important;
  background: var(--meh-card) !important;
  backdrop-filter: blur(14px);
  box-shadow: 0 20px 50px rgba(2, 6, 23, .18);
  transition: transform .2s ease, box-shadow .2s ease;
}

.meh-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: var(--meh-gradient-border);
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  opacity: .65;
}

.meh-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 60px var(--meh-glow);
}

.meh-card:hover::before {
  opacity: 1;
}

.meh-card h3 {
  color: var(--meh-text) !important;
  margin-bottom: .7rem !important;
}

.meh-card p {
  color: var(--meh-muted) !important;
  line-height: 1.7;
}

.meh-card i.icon {
  color: var(--meh-accent) !important;
}

/* Секция карточек */
.forgejo-landing-cards {
  padding: 4.5rem 1rem 5.5rem !important;
  background: transparent !important;
}

/* Подвал */
.page-footer {
  background: color-mix(in srgb, var(--meh-bg) 92%, transparent) !important;
  border-top: 1px solid var(--meh-border) !important;
  color: var(--meh-muted) !important;
  backdrop-filter: blur(12px);
}

.page-footer a {
  color: var(--meh-accent) !important;
  transition: color .18s ease !important;
}

.page-footer a:hover {
  color: var(--meh-accent-2) !important;
}
