/* ============================================================
   超级大脑官网 · 「立即入驻」入口 + 入驻方式弹窗（全站共享）
   2026-09-11 | 深色科技蓝主题（#3FB5FD）
   - 头部按钮：.header__actions / .hdr-btn（12 标准页 + 首页）
   - 入驻弹窗：.jmm-*（join modal；四卡选择 → 第二步申请表单）
   ============================================================ */

/* ---------------- 1. 头部按钮（登录 + 立即入驻） ---------------- */
.header__actions {
  display: flex;
  align-items: center;
  gap: 12px;
  pointer-events: auto;
  position: relative;
  z-index: 2;
  margin-left: 24px;
}
.hdr-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 38px;
  padding: 0 20px;
  border-radius: 999px;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  font-family: inherit;
  transition: background .2s, border-color .2s, color .2s, box-shadow .2s, transform .2s;
}
.hdr-btn--ghost {
  background: transparent;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .35);
}
.hdr-btn--ghost:hover {
  border-color: rgba(255, 255, 255, .65);
  background: rgba(255, 255, 255, .08);
}
.hdr-btn--primary {
  background: #3FB5FD;
  color: #04121f;
  border: 1px solid transparent;
  box-shadow: 0 4px 18px rgba(63, 181, 253, .35);
}
.hdr-btn--primary:hover {
  background: #5CC2FF;
  transform: translateY(-1px);
  box-shadow: 0 6px 22px rgba(63, 181, 253, .45);
}
.hdr-btn--primary:active { transform: translateY(0); }

/* 笔记本档：菜单收紧，按钮同步紧凑（避免挤压菜单） */
@media (min-width: 768px) and (max-width: 1199px) {
  .nav__item { margin-right: 14px !important; }
  .hdr-btn { height: 34px; padding: 0 13px; font-size: .8rem; }
  .header__actions { gap: 8px; margin-left: 14px; }
}
/* 移动端：按钮组左移，避让 fixed 汉堡按钮 */
@media (max-width: 767px) {
  .header__actions { margin-right: 54px; margin-left: 8px; }
  .hdr-btn { height: 32px; padding: 0 12px; font-size: .78rem; }
}

/* ---------------- 2. 入驻方式弹窗 ---------------- */
.jmm-overlay {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 2.5rem 1.5rem;
  background: rgba(4, 10, 18, .74);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.jmm-overlay.open { display: flex; }

.jmm-dialog {
  position: relative;
  width: 100%;
  max-width: 1320px;
  margin: auto;
  padding: clamp(1.75rem, 3vw, 2.75rem) clamp(1.25rem, 3vw, 2.5rem) 1.9rem;
  background: linear-gradient(180deg, #13202F 0%, #0E1926 100%);
  border: 1px solid #253444;
  border-radius: 22px;
  box-shadow: 0 40px 120px rgba(0, 0, 0, .65), inset 0 0 0 1px rgba(63, 181, 253, .06);
  color: #B9CBDE;
  animation: jmm-pop .3s cubic-bezier(.16, 1, .3, 1);
  outline: none;
}
@keyframes jmm-pop {
  from { opacity: 0; transform: translateY(16px) scale(.985); }
  to { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .jmm-dialog { animation: none; }
}

.jmm-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .24);
  background: rgba(255, 255, 255, .1);
  color: #E8F0F8;
  cursor: pointer;
  z-index: 3;
  transition: background .2s, color .2s, border-color .2s, transform .2s;
}
/* 关键修复（2026-09-11）：此前只设 color，SVG 默认 stroke:none，
   两条开放路径无法填充 → X 完全不显示，只剩极淡的圆。显式补 stroke。
   注意：内容页有全局内联规则 `svg:not([stroke]):not([fill]){stroke-width:1.5}`
   特异性 (0,2,1)，会盖掉本条 (0,1,1) → 统一加 #join-modal 作用域提升特异性。 */
#join-modal .jmm-close svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
}
.jmm-close:hover {
  background: rgba(255, 255, 255, .2);
  color: #fff;
  border-color: rgba(255, 255, 255, .48);
  transform: scale(1.06);
}
.jmm-close:active { transform: scale(.97); }
.jmm-close:focus-visible {
  outline: 2px solid #3FB5FD;
  outline-offset: 3px;
}

/* 头部（徽章 + 标题 + 副标题） */
.jmm-head { text-align: center; margin-bottom: clamp(1.4rem, 2.6vw, 2.2rem); }
.jmm-badge {
  display: inline-flex;
  align-items: center;
  height: 30px;
  padding: 0 16px;
  margin-bottom: 1.05rem;
  border-radius: 999px;
  border: 1px solid rgba(63, 181, 253, .4);
  background: rgba(63, 181, 253, .08);
  color: #8CD8FF;
  font-size: .82rem;
  font-weight: 600;
  letter-spacing: .08em;
}
.jmm-title {
  margin: 0 0 .6rem;
  font-size: clamp(1.5rem, 2.4vw, 2.05rem);
  font-weight: 700;
  color: #E8F0F8;
  letter-spacing: .01em;
}
.jmm-sub { margin: 0; font-size: .95rem; color: #8FA3B7; }

/* 四卡网格 */
.jmm-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.15rem;
}

.jmm-card {
  display: flex;
  flex-direction: column;
  padding: 1.45rem 1.3rem 1.3rem;
  background: #16222F;
  border: 1px solid #22303F;
  border-radius: 16px;
  transition: border-color .25s, transform .25s, box-shadow .25s;
}
.jmm-card:hover {
  border-color: rgba(63, 181, 253, .5);
  transform: translateY(-3px);
  box-shadow: 0 18px 46px rgba(0, 0, 0, .45);
}
.jmm-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .6rem;
  margin-bottom: 1.25rem;
}
.jmm-card__icon {
  flex: none;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: linear-gradient(150deg, #3FB5FD 0%, #1E7FC8 100%);
  box-shadow: 0 8px 22px rgba(63, 181, 253, .28);
}
#join-modal .jmm-card__icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: #fff;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.jmm-tag {
  flex: none;
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(63, 181, 253, .4);
  background: rgba(63, 181, 253, .07);
  color: #8CD8FF;
  font-size: .77rem;
  font-weight: 600;
  white-space: nowrap;
}
.jmm-card__name {
  margin: 0 0 .55rem;
  font-size: 1.22rem;
  font-weight: 700;
  color: #E8F0F8;
}
.jmm-card__desc {
  margin: 0 0 1.15rem;
  font-size: .86rem;
  line-height: 1.72;
  color: #B9CBDE;
  min-height: 3.5em;
}
.jmm-card__divider {
  height: 1px;
  margin-bottom: 1.1rem;
  background: rgba(255, 255, 255, .07);
}
.jmm-card__label {
  margin: 0 0 .45rem;
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .12em;
  color: #3FB5FD;
}
.jmm-card__audience {
  margin: 0 0 1.15rem;
  font-size: .84rem;
  line-height: 1.68;
  color: #9FB2C5;
  min-height: 3.4em;
}
.jmm-chips {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-bottom: 1.35rem;
}
.jmm-chip {
  display: inline-flex;
  align-items: center;
  height: 27px;
  padding: 0 11px;
  border-radius: 8px;
  border: 1px solid rgba(63, 181, 253, .3);
  background: rgba(63, 181, 253, .06);
  color: #8CD8FF;
  font-size: .75rem;
}
.jmm-card__cta {
  margin-top: auto;
  align-self: center;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  height: 44px;
  padding: 0 30px;
  border-radius: 999px;
  border: 1.5px solid rgba(63, 181, 253, .55);
  background: transparent;
  color: #8CD8FF;
  font-size: .92rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  transition: background .22s, border-color .22s, color .22s, box-shadow .22s;
}
.jmm-card__cta:hover {
  background: rgba(63, 181, 253, .12);
  border-color: #3FB5FD;
  color: #BFE7FF;
  box-shadow: 0 0 0 4px rgba(63, 181, 253, .08);
}
#join-modal .jmm-card__cta svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .22s;
}
.jmm-card__cta:hover svg { transform: translateX(3px); }

/* 底部：已有账号 */
.jmm-foot {
  margin: 1.8rem 0 0;
  text-align: center;
  font-size: .87rem;
  color: #8FA3B7;
}
.jmm-foot a {
  margin-left: .15rem;
  color: #8CD8FF;
  font-weight: 600;
  text-decoration: none;
}
.jmm-foot a:hover { color: #BFE7FF; text-decoration: underline; }

/* ---------------- 3. 第二步：申请表单 ---------------- */
.jmm-form-view { display: none; }
.jmm-dialog.is-form .jmm-cards-view { display: none; }
.jmm-dialog.is-form .jmm-form-view { display: block; }

.jmm-back {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  margin: 0 0 1.1rem;
  padding: 0;
  border: none;
  background: none;
  color: #8FA3B7;
  font-size: .86rem;
  font-family: inherit;
  cursor: pointer;
  transition: color .2s;
}
.jmm-back:hover { color: #E8F0F8; }
#join-modal .jmm-back svg {
  width: 14px;
  height: 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.jmm-form { max-width: 520px; margin: 0 auto; text-align: left; }
.jmm-form__picked {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .3rem;
  margin-bottom: 1.5rem;
  padding: .7rem 1rem;
  border-radius: 12px;
  border: 1px solid rgba(63, 181, 253, .3);
  background: rgba(63, 181, 253, .07);
  font-size: .87rem;
  color: #B9CBDE;
}
.jmm-form__picked b { color: #8CD8FF; font-weight: 700; }
.jmm-field { margin-bottom: 1.05rem; }
.jmm-field label {
  display: block;
  margin-bottom: .45rem;
  font-size: .84rem;
  font-weight: 600;
  color: #B9CBDE;
}
.jmm-field label em { margin-left: 2px; color: #3FB5FD; font-style: normal; }
.jmm-field input,
.jmm-field textarea {
  width: 100%;
  height: 46px;
  padding: 0 14px;
  border-radius: 10px;
  border: 1px solid #253444;
  background: #0C1622;
  color: #E8F0F8;
  font-size: .9rem;
  font-family: inherit;
  outline: none;
  box-sizing: border-box;
  transition: border-color .2s, box-shadow .2s;
}
.jmm-field textarea { height: auto; padding: 12px 14px; resize: vertical; }
.jmm-field input::placeholder,
.jmm-field textarea::placeholder { color: #5A6E80; }
.jmm-field input:focus,
.jmm-field textarea:focus {
  border-color: rgba(63, 181, 253, .65);
  box-shadow: 0 0 0 3px rgba(63, 181, 253, .13);
}
.jmm-form__msg { display: none; margin-top: 1rem; font-size: .86rem; text-align: center; }
.jmm-form__msg.show { display: block; }
.jmm-form__msg.ok { color: #34D399; }
.jmm-form__msg.err { color: #FF6B6B; }
.jmm-form__actions { display: flex; gap: .85rem; margin-top: 1.5rem; }
.jmm-btn {
  flex: 1;
  height: 48px;
  border: none;
  border-radius: 12px;
  font-size: .92rem;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  transition: background .22s, border-color .22s, color .22s, box-shadow .22s, transform .22s;
}
.jmm-btn--primary {
  background: #3FB5FD;
  color: #04121f;
  box-shadow: 0 8px 26px rgba(63, 181, 253, .28);
}
.jmm-btn--primary:hover { background: #5CC2FF; transform: translateY(-1px); }
.jmm-btn--primary:disabled { opacity: .6; cursor: default; transform: none; }
.jmm-btn--ghost { background: transparent; border: 1px solid #253444; color: #8FA3B7; }
.jmm-btn--ghost:hover { border-color: #3A4A5A; color: #E8F0F8; }

/* ---------------- 4. 响应式 ---------------- */
@media (max-width: 1199px) {
  .jmm-grid { grid-template-columns: repeat(2, 1fr); }
  .jmm-dialog { max-width: 860px; }
}
@media (max-width: 700px) {
  .jmm-overlay { align-items: flex-end; padding: 0; }
  .jmm-dialog {
    max-width: 100%;
    max-height: 94vh;
    overflow-y: auto;
    border-radius: 20px 20px 0 0;
    border-bottom: none;
    padding: 1.6rem 1.1rem 1.5rem;
  }
  .jmm-grid { grid-template-columns: 1fr; gap: .9rem; }
  .jmm-card__desc,
  .jmm-card__audience { min-height: 0; }
  .jmm-close { top: .9rem; right: .9rem; }
  .jmm-form__actions { flex-direction: column-reverse; }
}

/* ---------------- 5. 减少动效（全站降级，015-TOK-003） ----------------
   本文件为全部 16 个页面共载的最后一张样式表 → 全站「减少动效」主落点：
   覆盖首页 css/style.css、agent.css、nav.css、theme-dark.css 及各页内联 <style>。
   用 duration 降级而非 animation:none —— 避免依赖 forwards 终态的入场动画
   回退到初始帧导致内容不可见（「2」节弹窗的局部 animation:none 不受影响）。 */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
