/* ============================================================
   砂狼白子社区 · 深色 SCP 终端主题
   把社区官网配色对齐到赞助商店（深绿 / 荧光绿）
   加载顺序：在 css/style.css 之后
   ============================================================ */

:root {
  --bg: #0a0e07;
  --surface: #0e1409;
  --surface-soft: #111a0c;
  --border: #233016;
  --border-strong: #2c3a20;
  --text: #eaf1e2;
  --text-2: #b9c9ab;
  --primary: #8ce22a;
  --primary-dark: #6fbf1f;
  --primary-soft: #16220d;
  --danger: #ff5a5a;
  --danger-soft: #2a1210;
  --green: #8ce22a;
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, .45);
  --shadow-sm: 0 2px 12px rgba(0, 0, 0, .50);
  --shadow-md: 0 10px 28px rgba(0, 0, 0, .55);
  --shadow-lg: 0 20px 50px rgba(0, 0, 0, .65);
}

html, body {
  background-color: var(--bg) !important;
  color: var(--text) !important;
}

/* ---------- 背景图（伊甸园徽记） ---------- */
body {
  background-image:
    linear-gradient(180deg, rgba(10, 14, 7, .88) 0%, rgba(10, 14, 7, .80) 45%, rgba(10, 14, 7, .92) 100%),
    url("../assets/eden-bg.jpg");
  background-size: cover, cover;
  background-position: center center, center top;
  background-repeat: no-repeat, no-repeat;
  background-attachment: fixed, fixed;
}
@media (max-width: 768px) {
  body { background-attachment: scroll, scroll; background-size: cover, cover; }
}

/* 选区 / 滚动条 */
::selection { background: rgba(140, 226, 42, .25); color: #eaf1e2; }
::-webkit-scrollbar-track { background: #0b1206; }
::-webkit-scrollbar-thumb { background: #233016; }
::-webkit-scrollbar-thumb:hover { background: #3d5c22; }

/* ---------- 导航 ---------- */
.navbar-glass {
  background: rgba(10, 14, 7, .74) !important;
  border-bottom: 1px solid rgba(35, 48, 22, .8);
}
.navbar-glass.scrolled {
  background: rgba(10, 14, 7, .94) !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, .55) !important;
}
.nav-item { color: var(--text-2) !important; }
.nav-item:hover, .nav-item.active { color: var(--primary) !important; }
.logo-badge { border-color: var(--border-strong) !important; }

/* ---------- 按钮 ---------- */
.btn-primary {
  background: linear-gradient(135deg, #8ce22a, #5fc21a) !important;
  color: #08120a !important;
  box-shadow: 0 6px 18px rgba(140, 226, 42, .22) !important;
}
.btn-primary:hover { box-shadow: 0 10px 26px rgba(140, 226, 42, .34) !important; }
.btn-ghost {
  border-color: var(--border-strong) !important;
  color: var(--text) !important;
  background: rgba(255, 255, 255, .02) !important;
}
.btn-ghost:hover {
  border-color: var(--primary) !important;
  color: var(--primary) !important;
  background: rgba(140, 226, 42, .08) !important;
}
.chip {
  background: var(--surface-soft) !important;
  border-color: var(--border-strong) !important;
  color: var(--text-2) !important;
}

/* ---------- 卡片 ---------- */
.card, .staff-card, .rule-item, .feature-card, .contact-card, .coop-box,
.stat-cell, .glass, .glass-strong, .modal-panel, .mobile-menu-panel {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--text);
}
.stat-cell, .glass-strong, .modal-panel { box-shadow: var(--shadow-sm) !important; }
.card.hov:hover, .staff-card:hover, .rule-item:hover,
.feature-card:hover, .contact-card:hover {
  border-color: var(--primary) !important;
  box-shadow: var(--shadow-md) !important;
}
.card-icon, .rule-num, .feature-icon, .contact-icon {
  background: var(--primary-soft) !important;
  color: var(--primary) !important;
}
.feature-card:hover .feature-icon { background: var(--primary) !important; color: #08120a !important; }

/* ---------- 文字 ---------- */
.section-title, .card-title, .rule-text, .info-title,
.staff-name, .feature-title, .contact-title { color: var(--text) !important; }
.section-sub, .card-desc, .info-text, .staff-bio, .feature-desc,
.contact-desc, .rule-body, .stat-label { color: var(--text-2) !important; }
.info-warn { color: #ff8a6e !important; }
.stat-num { color: var(--primary) !important; }

/* ---------- 警示 / 合作 ---------- */
.warning-banner {
  background: linear-gradient(90deg, rgba(255, 90, 60, .12), rgba(255, 90, 60, .03)) !important;
  border-color: #6b2a1a !important;
  color: #ffcdbf !important;
}
.coop-allow { background: rgba(140, 226, 42, .07) !important; border-color: #2c4a18 !important; }
.coop-deny { background: rgba(255, 90, 60, .07) !important; border-color: #6b2a1a !important; }
.rule-notes li { color: var(--text-2) !important; }

/* ---------- 赞助按钮 ---------- */
.donate-btn {
  background: var(--surface) !important;
  border-color: var(--border-strong) !important;
  color: var(--text) !important;
}
.donate-btn:hover {
  border-color: var(--primary) !important;
  box-shadow: 0 14px 30px rgba(140, 226, 42, .20) !important;
}
.donate-btn-icon { background: rgba(140, 226, 42, .14) !important; color: var(--primary) !important; }
.sponsor-row:hover { background: var(--surface-soft) !important; }
.sponsor-name { color: var(--text) !important; }
.sponsor-amt { color: var(--primary) !important; }

/* ---------- 弹窗 / 二维码 ---------- */
.modal-backdrop { background: rgba(5, 8, 3, .78) !important; }
.modal-close { border-color: var(--border-strong) !important; color: var(--text-2) !important; }
.modal-close:hover { border-color: var(--primary) !important; color: var(--primary) !important; }
/* 二维码必须白底才扫得出来 */
.qr-frame { background: #ffffff !important; border-color: var(--border-strong) !important; }

/* ---------- 移动端菜单 ---------- */
.mobile-menu-backdrop { background: rgba(5, 8, 3, .7) !important; }
.mobile-menu-panel { border-left-color: var(--border) !important; }
.mobile-nav-link { color: var(--text-2) !important; }
.mobile-nav-link:hover, .mobile-nav-link.active { color: var(--primary) !important; }
#menu-btn { border-color: var(--border-strong) !important; }
.hamburger i { background: var(--text) !important; }

/* ---------- 页脚 ---------- */
footer, .footer-bar { border-color: var(--border) !important; color: #6d86a3 !important; }

/* ---------- Tailwind 默认色覆盖 ---------- */
.text-slate-900, .text-slate-800 { color: #eaf1e2 !important; }
.text-slate-600 { color: #b9c9ab !important; }
.text-white { color: #08120a !important; }
.bg-ink { background-color: #0a0e07 !important; }
.bg-slate-100, .bg-slate-200 { background-color: #16220d !important; }
.border-slate-200 { border-color: #233016 !important; }
.text-red-600\/80 { color: #ff8a6e !important; }
.text-sky-500 { color: #6fb6ff !important; }
.text-indigo-500 { color: #9db8ff !important; }
.text-amber-500 { color: #ffc93c !important; }

/* ---------- 基础插件小卡 ---------- */
.plugin-chip {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 13px 15px;
  border-radius: 13px;
  border: 1px solid var(--border);
  background: var(--surface);
  transition: transform .22s var(--ease), border-color .22s, box-shadow .22s;
}
.plugin-chip:hover {
  transform: translateY(-3px);
  border-color: var(--primary);
  box-shadow: var(--shadow-sm);
}
.plugin-dot {
  flex: none;
  width: 8px; height: 8px;
  margin-top: 7px;
  border-radius: 50%;
  background: var(--primary);
  box-shadow: 0 0 10px rgba(140, 226, 42, .65);
}
.plugin-name { font-size: 14px; font-weight: 700; color: var(--text); line-height: 1.4; }
.plugin-desc { margin-top: 2px; font-size: 12px; color: var(--text-2); line-height: 1.6; }

/* 特色插件阵营标签 */
.feature-faction {
  margin-top: 4px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
}

/* details 折叠块 */
details > summary { list-style: none; }
details > summary::-webkit-details-marker { display: none; }
details > summary::after { content: " ▾"; color: var(--text-2); }
details[open] > summary::after { content: " ▴"; }

input, textarea, select {
  background: var(--surface-soft) !important;
  border-color: var(--border-strong) !important;
  color: var(--text) !important;
}
input::placeholder, textarea::placeholder { color: #6b7a6b !important; }

/* 赞助商员工卡 */
.staff-sponsor {
  position: relative;
  border-color: rgba(255, 201, 60, .45) !important;
  background: linear-gradient(165deg, rgba(255, 201, 60, .10), var(--surface) 55%) !important;
  box-shadow: 0 0 26px rgba(255, 201, 60, .12) !important;
}
.staff-sponsor:hover {
  border-color: rgba(255, 201, 60, .85) !important;
  box-shadow: 0 14px 34px rgba(255, 201, 60, .18) !important;
}
.staff-sponsor .staff-avatar {
  box-shadow: 0 0 0 2px rgba(255, 201, 60, .5);
}
.staff-sponsor .staff-role {
  color: #ffc93c !important;
  font-weight: 700;
}
.sponsor-ribbon {
  position: absolute;
  top: 10px;
  right: -22px;
  transform: rotate(38deg);
  transform-origin: center;
  background: linear-gradient(135deg, #ffc93c, #ff9f43);
  color: #2a1a00;
  font-size: 9.5px;
  font-weight: 900;
  letter-spacing: .08em;
  padding: 2px 24px;
  box-shadow: 0 2px 10px rgba(255, 159, 67, .45);
  pointer-events: none;
  z-index: 3;
}
@media (prefers-reduced-motion: reduce) {
  .staff-sponsor { transition: none; }
}
