/* ========= Brand Tokens ========= */
:root{
  --brand: #ff7a00;
  --brand-ink: #0f172a;
  --header-shadow: 0 6px 18px rgba(0,0,0,.06);
  --radius-pill: 999px;
}

/* 全局字体 */
body{
  font-family: "Nunito","Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,Helvetica,sans-serif;
  color: var(--brand-ink);
}

/* ========== 顶栏（Nav） ========== */
.site-nav { background:#c2c2c2; }
.logo-text { color:#111; }

.navbar .nav-link{
  font-weight:600; letter-spacing:.2px;
  color:#0f172a !important;
  padding:.75rem 1rem !important;
}
.navbar .nav-link:hover{ color:#111827 !important; opacity:.85; }

/* 胶囊按钮与品牌按钮 */
.btn{ border-radius:14px; }
.btn-brand{
  background:#f4791f; color:#fff; font-weight:700;
  padding:10px 20px; border:none; border-radius:var(--radius-pill);
}
.btn-brand:hover{ filter:brightness(1.05); }

/* 登录/注册主按钮（统一版本） */
.btn-auth{
  padding:10px 18px;
  border-radius:var(--radius-pill);
  background:var(--brand);
  color:#cdae6d !important;
  font-weight:700;
  border:none;
  box-shadow:0 10px 24px rgba(255,122,0,.28);
  transition:box-shadow .2s, transform .08s, opacity .2s;
  text-decoration:none;
}
.btn-auth:hover{ box-shadow:0 12px 30px rgba(255,122,0,.34); transform:translateY(-1px); }
.btn-auth:active{ transform:translateY(1px); }

/* 右侧头像首字母圆形 */
.user-avatar{
  width:42px; height:42px; border-radius:50%;
  background:var(--brand); color:#fff; font-weight:700; font-size:18px;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 16px rgba(255,122,0,0.25);
  cursor:pointer; transition:transform .2s, box-shadow .2s;
}
.user-avatar:hover{ transform:translateY(-1px); box-shadow:0 10px 24px rgba(255,122,0,0.35); }

/* ========== 顶部导航整体调整 ========== */

/* 外层 header：增加高度、背景白灰渐变 */
.bns-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 1100;
  background: linear-gradient(to bottom, #ffffff 0%, #f7f8fa 100%);
  box-shadow: 0 4px 20px rgba(0,0,0,0.06);
  transform: translateY(0);
  transition: transform .32s ease, box-shadow .2s ease, opacity .2s ease;
}

/* 隐藏状态：向上滑走 */
.bns-header.bns-header--hidden {
  transform: translateY(-100%);
  opacity: .98;
  box-shadow: none;
}

/* 避免“减少动画”的用户不适 */
@media (prefers-reduced-motion: reduce){
  .bns-header { transition: none; }
}

/* 给正文一个上边距，避免 header 变 fixed 后内容被盖住 */
body.has-fixed-header {
  /* 此值由 JS 动态设置为 header 高度，这里只是兜底 */
  padding-top: 80px;
}

/* Navbar 内部间距更宽、更高 */
.bns-header .navbar {
  padding-top: 16px;
  padding-bottom: 16px;
  min-height: 90px;  /* 整个栏更高 */
  transition: all .25s ease;
   background: #e4e0d7 !important;
}

/* Logo 放大一些 */
.brand-logo {
  height: 50px;
  width: auto;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,.08));
}

/* 品牌文字更醒目 */
.brand-wordmark {
  font-size: 1.8rem;
  font-weight: 800;
  color: var(--brand, #ff7a00);
  letter-spacing: .5px;
  text-transform: uppercase;
  line-height: 1;
}

/* 注册按钮保持亮度、大小协调 */
.btn-auth {
  padding: 10px 20px;
  font-size: 1.35rem;
  font-weight: 800;
  border-radius: 12px;
  background: var(--brand, #ff7a00);
  color: #ffffff !important;
  border: none;
  box-shadow: 0 8px 20px rgba(255,122,0,0.25);
  transition: all .25s ease;
}
.btn-auth:hover {
  box-shadow: 0 10px 28px rgba(255,122,0,0.3);
  background-color: #e96f00;   /* 悬停变深一点 */
  color: #ffffff;
  transform: translateY(-2px);
}

/* 汉堡按钮微调对齐与阴影 */
.btn-icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid rgba(0,0,0,0.08);
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all .25s ease;
}
.btn-icon:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,0.12);
  transform: translateY(-1px);
}

/* 图标样式更清晰 */
.icon-bars, .icon-bars::before, .icon-bars::after {
  content: "";
  display: block;
  width: 18px;
  height: 2px;
  background: #111;
  border-radius: 2px;
  position: relative;
}
.icon-bars::before { position: absolute; top: -6px; }
.icon-bars::after  { position: absolute; top: 6px; }

/* 用户头像大小与阴影 */
.user-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--brand, #ff7a00);
  color: #fff;
  font-weight: 700;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 16px rgba(255,122,0,0.25);
  transition: all .25s ease;
}
.user-avatar:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(255,122,0,0.35);
}


/* 图标按钮（统一尺寸） */
.btn-icon{
  display:inline-flex; align-items:center; justify-content:center;
  width:50px; height:50px; border-radius:50%;
  border:1px solid rgba(0,0,0,.08); background:#fff;
  transition:box-shadow .2s, transform .1s;
}
.btn-icon:hover{ box-shadow:0 6px 16px rgba(0,0,0,.1); }

/* 汉堡图标（三横） */
.icon-bars, .icon-bars::before, .icon-bars::after{
  content:""; display:block; width:18px; height:2px; background:#111; border-radius:2px; position:relative;
}
.icon-bars::before{ position:absolute; top:-6px; }
.icon-bars::after{ position:absolute; top: 6px; }

/* ========== 社交按钮（保留） ========== */
.btn-social{
  border-radius:var(--radius-pill); padding:.45rem 1rem; font-weight:700; border:1px solid transparent;
}
.btn-facebook{ background:#1877F2; color:#fff; }
.btn-facebook:hover{ filter:brightness(0.95); color:#fff; }
.btn-instagram{
  background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); color:#fff;
}
.btn-instagram:hover{ filter:brightness(0.95); color:#fff; }

/* ========== 移动抽屉（Mobile Drawer） ========== */
/* ========== 半屏顶部下拉 Drawer（优雅动画） ========== */

/* 半屏顶部下拉 Drawer */
.mobile-drawer {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: 80dvh; /* 半屏高度，可调为60dvh */
  background: #fff;
  z-index: 1050;
  border-bottom-left-radius: 16px;
  border-bottom-right-radius: 16px;
  box-shadow: 0 20px 40px rgba(0,0,0,.18);
  display: flex;
  flex-direction: column;
  transform: translateY(-110%);
  opacity: 0;
  transition:
    transform .4s cubic-bezier(.25,.95,.3,1.05),
    opacity .4s ease;
  overflow: hidden;
}
.mobile-drawer.is-open {
  transform: translateY(0);
  opacity: 1;
}

/* 遮罩保持 */
.drawer-overlay {
  position: fixed; inset: 0;
  background: rgba(0,0,0,.35);
  opacity: 0; visibility: hidden;
  transition: opacity .25s ease, visibility .25s ease;
  z-index: 1040;
}
.drawer-overlay.is-open { opacity: 1; visibility: visible; }

/* 内容 */
.md-header {
  padding: 16px 18px;
  border-bottom: 1px solid #eee;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.md-logo {
  height: 36px;          /* 比原来 24px 更大，可调 */
  width: auto;
  filter: drop-shadow(0 3px 6px rgba(0,0,0,.15));
}

.md-brand-text {
  font-size: 1.3rem;     /* 大号品牌字 */
  font-weight: 800;
  letter-spacing: .5px;
  color: var(--brand, #ff7a00);
  text-transform: uppercase;
  line-height: 1;
}
.md-list {
  flex: 1;
  overflow-y: auto;
  padding: 16px 18px 90px; /* 预留按钮底部空间 */
}
.md-item { border-bottom: 1px solid #f1f3f6; }
.md-toggle {
  width: 98%;
  text-align: left;
  padding: 19px 5px;
  background: transparent;
  border: 0;
  font-weight: 700;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.2rem
}
.md-item .chev {
  width: 10px; height: 10px;
  border-right: 2px solid #666;
  border-bottom: 2px solid #666;
  transform: rotate(-45deg);
  transition: .2s;
}
.md-item.open .chev { transform: rotate(45deg); }
.md-panel {
  max-height: 0;
  overflow: hidden;
  padding: 0 0 0 8px;              /* 先把 padding 收起来，避免空白 */
  transition: max-height .25s ease, padding .25s ease;
}

/* 展开时：用 JS 设置 max-height，同时恢复 padding */
.md-item.open .md-panel {
  padding: 8px 0 16px 8px;
}
.md-panel a {
  display: block;
  padding: 8px 0;
  color: #222832;
  text-decoration: none;
}
.md-panel a:hover { color: var(--brand, #ff7a00); }

/* 底部左右按钮（固定在底部） */
.md-bottom-actions {
  position: absolute;
  bottom: max(16px, env(safe-area-inset-bottom));
  left: 16px; right: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

/* 注册（左橙）、登录（右描边） */
.md-bottom-actions .left-btn,
.md-bottom-actions .right-btn {
  flex: 1;
  text-align: center;
  padding: 12px 0;
  font-weight: 800;
  font-size: 1.05rem;
  border-radius: 999px;
  transition: all .25s ease;
}

/* 左：橙 */
.md-bottom-actions .left-btn {
  background: var(--brand, #ff7a00);
  color: #fff;
  box-shadow: 0 10px 24px rgba(255,122,0,.28);
}
.md-bottom-actions .left-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 30px rgba(255,122,0,.34);
}

/* 右：描边橙 */
.md-bottom-actions .right-btn {
  background: #fff;
  color: var(--brand, #ff7a00);
  border: 2px solid var(--brand, #ff7a00);
}
.md-bottom-actions .right-btn:hover {
  background: var(--brand, #ff7a00);
  color: #fff;
  transform: translateY(-1px);
}



/* Auth Modal 显隐 */
.auth-modal{ display:none; }
.auth-modal.is-open{ display:block; }

/* ========== 顶部下拉通知条（Peekbar） ========== */
.peekbar{
  position:fixed; top:-120px; left:0; right:0; z-index:1040;
  background:#fff7ed; border-bottom:1px solid #fde68a;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  transition:transform .35s ease, opacity .35s ease;
  transform:translateY(-8px); opacity:0;
}
.peekbar.is-show{ transform:translateY(0); top:0; opacity:1; }
.peekbar__inner{
  max-width:1120px; margin:0 auto; padding:12px 16px;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
}
.peekbar__text{ color:#92400e; font-weight:700; }
.peekbar__actions .btn{ border-radius:var(--radius-pill); font-weight:800; }

/* ========== Footer（结构 A） ========== */
.site-footer{ background:#feffff; color:#cbd5e1; padding:2px 2px; }
.site-footer .footer-card{
  background:#151515; border-radius:10px; padding:45px 25px;
  box-shadow:0 18px 50px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.03);
}
.site-footer .footer-cols{
  max-width:1200px;             /* 跟 container-xl 差不多就行 */
  margin:0 auto 24px;
  display:flex;
  justify-content:space-between;/* 三列左右均匀分布 */
  gap:48px;                     /* 列间距正常一点 */
  flex-wrap:wrap;               /* 小屏可以换行 */
}

.site-footer .fcol{
  flex:1 1 0;                   /* 自动分配宽度 */
  min-width:200px;              /* 保证不太窄 */
  max-width:320px;
  text-align:left;
}
@media (max-width: 768px){
  .site-footer .footer-cols{
    flex-direction:column;
    gap:24px;
  }
}

.footer-col-title{
  font-size:1.25rem; font-weight:700; letter-spacing:.02em; color:#8c9099;
  line-height:1.2; margin:0 0 .8rem;
}

.footer-nav{ list-style:none; padding:0; margin:0; }
.footer-nav li + li{ margin-top:6px; }
.footer-nav a{
  display:inline-block; line-height:1.6; padding:4px 0;
  color:#e6e7ea; text-decoration:none; transition:color .15s ease, transform .15s ease;
}
.footer-nav a:hover{ color:#ff7a00; transform:translateX(2px); }

.footer-bottom{
  border-top:1px solid rgb(230,226,226); margin-top:29px; padding-top:39px;
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
.footer-bottom .copyright{ font-size:.9rem; color:#ffffff; }
.footer-bottom .legal{ list-style:none; display:flex; gap:18px; padding:0; margin:0; }
.footer-bottom .legal a{ color:#a1a1aa; text-decoration:none; }
.footer-bottom .legal a:hover{ color:#fff; }

.btn-outline-light{
  border:2px solid #e6e7ea; color:#e6e7ea; background:transparent;
  font-weight:700; padding:8px 20px; border-radius:var(--radius-pill);
}
.btn-outline-light:hover{ color:#111; background:#e6e7ea; }

/* 页脚品牌大标题 */
.site-footer .footer-hero{ text-align:center; margin:8px 0 18px; }
.site-footer .footer-hero__title{
  font-size:clamp(40px,7.5vw,92px);
  line-height:1.06; font-weight:900; letter-spacing:.03em;
  color:#ffcc00; margin:0; text-shadow:0 10px 30px rgba(0,0,0,.24);
}
.site-footer .footer-hero__subtitle{
  color:#e5e7eb; font-size:clamp(14px,2.1vw,18px); line-height:1.6; margin:10px 0 4px; opacity:.95;
}

/* 社交列表（统一版本） */
.footer-social{
  list-style:none; padding:0; margin:8px 0 22px;
  display:grid; gap:10px;
}
.footer-social a{
  display:inline-flex; align-items:center; gap:10px;
  color:#e6e7ea; text-decoration:none; font-weight:600;
  transition:color .25s ease, transform .25s ease;
  width:fit-content;
}
.footer-social a:hover{ color:#ff7a00; transform:translateX(2px); }

.social-icon{
  width:22px; height:22px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:#fff; color:#111;
  transition:background .25s ease, color .25s ease;
}
.social-icon.fb{ color:#1877f2; }
.social-icon.ig{ background:#ffe3c2; color:#c15300; }
.footer-social a:hover .social-icon{ background:#ff7a00; color:#fff; }

/* ========== 其他小组件（保留用得到的） ========== */
.avatar-dot{
  width:28px; height:28px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  background:#147a82; color:#fff; font-weight:700;
}

/* 小屏微调 */
@media (max-width:576px){
  .brand-wordmark{ font-size:20px; }
  .btn-auth{ padding:9px 14px; }
}
