/* ===== 露营主题全站样式 ===== */
:root{
  --bg:#0f1713;               /* 夜色深绿 */
  --bg-2:#131d18;
  --card:#16241d;             /* 森林绿卡片 */
  --accent:#7cc18a;           /* 苔藓绿 */
  --accent-2:#ffd782;         /* 夕阳暖黄 */
  --muted:#9fb3a7;
  --text:#e8f1ec;
  --danger:#f06c6c;
  --success:#4fd487;
  --ring:rgba(124,193,138,.45);
}

html,body{
  background: radial-gradient(1200px 700px at 70% -10%, #1b2a22 0%, var(--bg) 45%) fixed;
  color: var(--text);
  font-family: "Noto Sans SC","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;
}

/* 细节增强 */
a{ color: var(--accent); }
a:hover{ color: #9ad7a6; }
.btn{ border-radius: 14px; transition: transform .12s ease, box-shadow .2s ease; }
.btn:active{ transform: translateY(1px) scale(.99); }

.btn-camp{
  background: linear-gradient(135deg,var(--accent) 0%,#6bbf9c 45%,#59b0a0 100%);
  border: 0; color:#093522; box-shadow: 0 6px 20px rgba(124,193,138,.35);
}
.btn-camp:hover{ filter: brightness(1.04); box-shadow: 0 8px 28px rgba(124,193,138,.45); }

.btn-outline-camp{
  border: 1px solid var(--accent); color: var(--text);
}
.btn-outline-camp:hover{
  background: rgba(124,193,138,.12);
}

/* 导航栏 */
.navbar-camp{
  background: rgba(19,29,24,.72);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(124,193,138,.18);
  border-radius: 16px;
  padding: 10px 16px;
  box-shadow: 0 8px 24px rgba(0,0,0,.25);
}

/* Hero */
.hero{
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  isolation: isolate;
  min-height: 360px;
  background: url("/static/img/hero.jpg") center/cover no-repeat;
  display: grid; place-items: end start;
}
.hero::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(15,23,19,.15) 0%, rgba(15,23,19,.65) 60%, rgba(15,23,19,.95) 100%);
}
.hero-content{
  position: relative; z-index:1;
  padding: 28px;
  max-width: 720px;
}
.hero-kicker{
  display:inline-block; padding:6px 10px; margin-bottom:10px;
  border-radius: 999px; font-size: 12px; letter-spacing:.12em;
  background: rgba(255,215,130,.18); color: var(--accent-2);
  border: 1px solid rgba(255,215,130,.35);
}
.hero h1{ font-weight: 800; text-shadow: 0 4px 24px rgba(0,0,0,.45); }
.hero p{ color: #d9e6df; }

/* 山脉分割线（SVG 容器） */
.mountain-divider{
  width: 100%; height: 52px; margin-top: -8px;
}

/* 卡片 */
.card{
  background: linear-gradient(180deg, rgba(22,36,29,.88), rgba(19,29,24,.88));
  border: 1px solid rgba(124,193,138,.12);
  border-radius: 18px;
  color: var(--text);
  box-shadow: 0 10px 35px rgba(0,0,0,.25);
}
.card img{ border-top-left-radius: 18px; border-top-right-radius: 18px; }

.badge-success{ background: linear-gradient(180deg,#3ccf85,#28b46e); }
.badge-danger{ background: linear-gradient(180deg,#ff8077,#f06458); }

/* 列表区块标题 */
.section-title{
  display:flex; align-items:center; gap:10px;
  margin: 12px 0 18px;
}
.section-title .dot{
  width:12px; height:12px; border-radius:50%;
  background: var(--accent-2); box-shadow: 0 0 0 6px rgba(255,215,130,.12);
}

/* 视频卡片视频元素 */
.video-card video{
  border-radius: 14px; border:1px solid rgba(124,193,138,.18);
}

/* 表单 */
.form-control, .form-select, textarea{
  background: var(--bg-2); color: var(--text);
  border: 1px solid rgba(124,193,138,.18);
}
.form-control:focus, .form-select:focus, textarea:focus{
  border-color: var(--accent);
  box-shadow: 0 0 0 4px var(--ring);
}

/* 页脚提示 */
.hint{
  color: var(--muted); font-size: 13px;
}

/* 微动效 */
.hover-rise{ transition: transform .18s ease, box-shadow .25s ease; }
.hover-rise:hover{ transform: translateY(-4px); box-shadow: 0 16px 40px rgba(0,0,0,.35); }

/* 栅格间距微调 */
.row.g-14{ --bs-gutter-x: 1.2rem; --bs-gutter-y: 1.2rem; }
