/* ===========================================================
   门厅 2.0 · 未登录首页（2026-10-28 第二期改版）
   结构：吸顶导航 → Hero（文案 + 监护屏）→ 数据带 → 功能矩阵
        → 三步上手 → 题库覆盖 → 底部转化（文案 + 登录）→ 会员对照
   配色：深底 #07161c → #0a3444 + 青光 + 网格；鸭子/会员用暖琥珀
   缓动统一 cubic-bezier(.2,.8,.2,1)；prefers-reduced-motion 降为静态
   =========================================================== */
:root{
  --gate-ease:cubic-bezier(.2,.8,.2,1);
  --gate-deep:#07161c;
  --gate-deep2:#0a3444;
  --gate-cyan:#22d3ee;
  --gate-cyan-soft:#67e8f9;
  --gate-amber:#f2a63b;      /* 鸭子嘴 / 会员：全站唯一暖色 */
  --gate-amber-soft:#ffc978;
  --gate-t1:#ffffff;         /* 主文字 */
  --gate-t2:#c6e8f1;         /* 正文 */
  --gate-t3:#9fd3e0;         /* 次要 */
  --gate-t4:#7fb3c4;         /* 弱化 */
  --gate-ln:rgba(103,232,249,.14);
  --gate-ln2:rgba(103,232,249,.26);
  --gate-panel:rgba(255,255,255,.032);
  --gate-panel2:rgba(255,255,255,.055);
}

/* 整页底色 + 网格纹理（原 .gate-left 的背景提升为页面级） */
#loginView.gate-on{
  display:block;padding:0;min-height:100vh;
  color:var(--gate-t2);
  background:
    radial-gradient(58% 32% at 50% -4%,rgba(103,232,249,.15) 0%,transparent 70%),
    radial-gradient(110% 70% at 6% 2%,rgba(34,211,238,.13) 0%,transparent 56%),
    radial-gradient(90% 60% at 94% 26%,rgba(13,148,136,.16) 0%,transparent 60%),
    linear-gradient(168deg,var(--gate-deep) 0%,#06222c 46%,var(--gate-deep2) 100%);
  background-attachment:scroll;
}
#loginView.gate-on::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.55;
  background-image:linear-gradient(rgba(103,232,249,.05) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(103,232,249,.05) 1px,transparent 1px);
  background-size:36px 36px;
  -webkit-mask-image:radial-gradient(130% 80% at 50% 0%,#000 22%,transparent 76%);
          mask-image:radial-gradient(130% 80% at 50% 0%,#000 22%,transparent 76%);
}

/* 呼吸光晕层：缓慢明暗 + 缩放，呼应「呼吸治疗」主题；尊重 reduced-motion */
#loginView.gate-on::after{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(40% 30% at 22% 16%,rgba(34,211,238,.18),transparent 70%),
    radial-gradient(36% 30% at 84% 10%,rgba(13,148,136,.15),transparent 72%),
    radial-gradient(46% 38% at 58% 62%,rgba(56,189,248,.10),transparent 74%);
  transform-origin:50% 42%;opacity:.75;
  animation:gateAurora 12s ease-in-out infinite;
}
@keyframes gateAurora{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.07)}}

/* 玻璃拟态：把深底上的半透面板统一做成磨砂玻璃，提升高级质感 */
.g-card,.g-try-box,.g-signup,.g-steps li,.gate-compare2{
  -webkit-backdrop-filter:blur(10px) saturate(140%);
          backdrop-filter:blur(10px) saturate(140%);
}

/* ---------- 吸顶导航 ---------- */
.g-top{
  position:sticky;top:0;z-index:40;
  background:rgba(6,26,33,.9);
  -webkit-backdrop-filter:saturate(140%) blur(14px);
          backdrop-filter:saturate(140%) blur(14px);
  border-bottom:1px solid var(--gate-ln);
}
.g-top-in{
  width:100%;max-width:1160px;margin:0 auto;padding:0 28px;height:64px;
  display:flex;align-items:center;gap:22px;position:relative;z-index:2;
}
.g-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.g-logo picture{display:block;width:36px;height:36px;border-radius:50%;overflow:hidden;
  border:1px solid rgba(103,232,249,.32);background:#fff;flex:none}
.g-logo img{width:100%;height:100%;object-fit:cover;object-position:50% 11%;display:block}
.g-logo-t{display:flex;flex-direction:column;line-height:1.22;min-width:0}
.g-logo-t b{font-size:15.5px;color:#fff;font-weight:700;letter-spacing:.4px;white-space:nowrap}
.g-logo-t i{font-style:normal;font-size:9.5px;color:var(--gate-cyan);letter-spacing:1.1px;margin-top:2px;white-space:nowrap}
.g-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.g-nav a{
  font-size:13.5px;color:var(--gate-t3);text-decoration:none;padding:7px 12px;border-radius:8px;
  transition:color .16s var(--gate-ease),background .16s var(--gate-ease);white-space:nowrap;
}
.g-nav a:hover{color:#fff;background:rgba(255,255,255,.06)}
.g-top-act{display:flex;align-items:center;gap:10px;flex:none}
.g-tlink{font-size:13.5px;color:var(--gate-t2);text-decoration:none;padding:7px 10px;border-radius:8px;white-space:nowrap}
.g-tlink:hover{color:#fff;background:rgba(255,255,255,.06)}
.g-tbtn{
  height:38px;padding:0 18px;border-radius:9px;border:0;cursor:pointer;font-family:inherit;
  font-size:13.5px;font-weight:600;color:#04252e;background:var(--gate-cyan);
  box-shadow:0 4px 14px rgba(34,211,238,.22);
  transition:transform .16s var(--gate-ease),background .16s var(--gate-ease),box-shadow .16s var(--gate-ease);
}
.g-tbtn:hover{background:#4bdcf0;transform:translateY(-1px);box-shadow:0 6px 18px rgba(34,211,238,.3)}

/* ---------- 容器 ---------- */
.g-wrap{
  width:100%;max-width:1160px;margin:0 auto;padding:0 28px 8px;
  position:relative;z-index:2;
}

/* ---------- Hero ---------- */
.g-hero{
  display:grid;grid-template-columns:1.06fr .94fr;gap:48px;align-items:center;
  padding:56px 0 0;
}
.g-hero-l{min-width:0}
.g-eyebrow{
  display:inline-flex;align-items:center;gap:7px;
  font-size:11.5px;letter-spacing:1.1px;color:#8ff0c4;
  background:rgba(52,211,153,.09);border:1px solid rgba(52,211,153,.26);
  border-radius:999px;padding:4px 12px 4px 10px;
}
.g-eyebrow .dot{width:5px;height:5px;border-radius:50%;background:#34d399;flex:none;
  box-shadow:0 0 6px rgba(52,211,153,.9);animation:gPulse 2.4s ease-in-out infinite}
@keyframes gPulse{0%,100%{opacity:1}50%{opacity:.35}}

.gate-h1{
  margin:18px 0 0;font-size:clamp(28px,calc(3vw + 13px),46px);
  line-height:1.2;color:#fff;letter-spacing:-.5px;font-weight:800;text-wrap:balance;
}
.gate-h1 em{
  font-style:normal;
  background:linear-gradient(100deg,#7fe9f7 0%,#5eead4 58%,#22d3ee 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.g-sec-head h2 em,.g-cover-l h2 em,.g-signup-l h2 em,.g-try-head h2 em{
  background:linear-gradient(100deg,#7fe9f7 0%,#5eead4 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.gate-sub{
  margin:16px 0 0;font-size:clamp(14px,calc(.45vw + 12.5px),16px);
  line-height:1.9;color:var(--gate-t2);max-width:33em;text-wrap:pretty;
}

/* CTA 按钮
   2026-10-28：原来 .gbtn/.g-primary/.g-ghost 的样式全写在 .gate-cta 作用域里，
   门厅其他位置（收口条、试答结果卡）一用就变成浏览器默认白按钮。
   提到全局后由 .gate-cta 只覆盖尺寸，谁都能直接用。 */
.gate-cta{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 0}
.gbtn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  height:52px;padding:0 26px;border-radius:11px;font-size:15.5px;font-weight:600;letter-spacing:.3px;
  border:1px solid transparent;cursor:pointer;text-decoration:none;font-family:inherit;
  transition:transform .18s var(--gate-ease),background .18s var(--gate-ease),box-shadow .18s var(--gate-ease);
}
.gbtn:hover{transform:translateY(-1px)}
.gbtn:active{transform:translateY(0)}
.g-primary{background:var(--gate-cyan);color:#04252e;box-shadow:0 6px 18px rgba(34,211,238,.28)}
.g-primary:hover{background:#4bdcf0;box-shadow:0 8px 22px rgba(34,211,238,.36)}
.g-ghost{background:rgba(255,255,255,.06);color:#e8f8fb;border-color:rgba(165,227,239,.4)}
.g-ghost:hover{background:rgba(255,255,255,.13);border-color:var(--gate-cyan-soft);color:#fff}

/* 信任行 */
.g-trust{display:flex;flex-wrap:wrap;gap:8px 20px;margin:18px 0 0;font-size:12.5px;color:var(--gate-t3)}
.g-trust span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.g-trust i{font-style:normal;color:#34d399;font-size:12px;font-weight:700}

/* Hero 右侧：监护屏 */
.g-hero-r{min-width:0}
.g-hero-r .gate-mon{margin:0}
.g-mon-cap{margin:12px 2px 0;font-size:12px;line-height:1.75;color:var(--gate-t4)}

/* ---------- 数据带 ---------- */
.gate-nums{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  margin:50px 0 0;padding:24px 0 0;border-top:1px solid var(--gate-ln2);
}
.gate-num{min-width:0;padding-left:20px;border-left:1px solid var(--gate-ln2)}
.gate-num:first-child{padding-left:0;border-left:0}
.gate-num b{
  display:block;font-size:clamp(26px,calc(1.9vw + 15px),38px);font-weight:700;line-height:1.05;
  letter-spacing:-.8px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Courier New",monospace;
  font-variant-numeric:tabular-nums;
  background:linear-gradient(180deg,#ffffff 0%,#a8e6f2 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.gate-num span{display:block;font-size:13px;color:var(--gate-t3);margin-top:8px;line-height:1.5;letter-spacing:.6px}

/* ---------- 区块通用 ---------- */
.g-sec{margin-top:84px;scroll-margin-top:80px}
.g-sec-head{max-width:760px}
.g-sec-head h2,.g-cover-l h2,.g-signup-l h2{
  margin:0;font-size:clamp(22px,calc(1.5vw + 15px),32px);line-height:1.3;
  font-weight:800;color:#fff;letter-spacing:-.3px;text-wrap:balance;
}
.g-sec-head h2 em,.g-cover-l h2 em,.g-signup-l h2 em{font-style:normal;color:var(--gate-cyan-soft)}
.g-sec-head p{margin:12px 0 0;font-size:15px;line-height:1.85;color:var(--gate-t2);max-width:44em}

/* ---------- 功能矩阵 ---------- */
.g-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
.g-card{
  position:relative;display:flex;flex-direction:column;gap:9px;
  padding:20px 20px 18px;border-radius:14px;text-decoration:none;
  background:var(--gate-panel);border:1px solid var(--gate-ln);
  transition:transform .2s var(--gate-ease),background .2s var(--gate-ease),
             border-color .2s var(--gate-ease),box-shadow .2s var(--gate-ease);
}
.g-card:hover{
  transform:translateY(-3px);background:var(--gate-panel2);
  border-color:rgba(103,232,249,.42);box-shadow:0 14px 34px rgba(0,0,0,.26);
}
.g-card .g-ico{
  width:38px;height:38px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;
  flex:none;color:var(--gate-cyan-soft);
  background:rgba(34,211,238,.10);border:1px solid rgba(103,232,249,.2);
  transition:background .2s var(--gate-ease),border-color .2s var(--gate-ease),color .2s var(--gate-ease);
}
.g-card .g-ico svg{width:20px;height:20px;display:block}
.g-card:hover .g-ico{background:rgba(34,211,238,.18);border-color:rgba(103,232,249,.42);color:#a5f3fc}
.g-card b{font-size:16px;font-weight:700;color:#fff;letter-spacing:.2px}
.g-card .g-desc{font-size:13.5px;line-height:1.75;color:var(--gate-t2);flex:1}
.g-card .g-meta{
  font-size:11.5px;color:var(--gate-t4);letter-spacing:.3px;
  padding-top:9px;border-top:1px solid rgba(103,232,249,.10);
}
.g-card .g-meta em{font-style:normal;color:var(--gate-cyan-soft);font-weight:600;
  font-family:ui-monospace,Menlo,Consolas,monospace}
.g-card-hl{background:linear-gradient(150deg,rgba(34,211,238,.14),rgba(255,255,255,.03));
  border-color:rgba(103,232,249,.34)}
.g-card-hl:hover{border-color:rgba(103,232,249,.6)}

/* ---------- 三步（2026-10-28 压缩：编号与文字同排，桌面 3 列约 100px 高） ---------- */
.g-steps{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;counter-reset:gstep}
.g-steps li{
  position:relative;display:flex;gap:13px;align-items:flex-start;
  padding:17px 18px 15px;border-radius:14px;
  background:var(--gate-panel);border:1px solid var(--gate-ln);overflow:hidden;
}
.g-steps li::after{
  content:"";position:absolute;left:0;top:0;bottom:0;width:2px;
  background:linear-gradient(180deg,var(--gate-cyan),transparent);
}
.g-step-n{
  flex:0 0 auto;display:block;font-family:ui-monospace,Menlo,Consolas,monospace;
  font-size:19px;line-height:1.2;font-weight:700;letter-spacing:-.5px;
  color:rgba(103,232,249,.42);margin:0;
}
.g-step-b{min-width:0}
.g-steps b{display:block;font-size:15px;color:#fff;margin-bottom:5px;line-height:1.4}
.g-steps p{margin:0;font-size:13px;line-height:1.72;color:var(--gate-t2)}

/* ---------- 题库覆盖 ---------- */
.g-cover{display:grid;grid-template-columns:1.02fr .98fr;gap:44px;align-items:start}
.g-cover-l{min-width:0}
.g-cover-l p{margin:12px 0 0;font-size:14.5px;line-height:1.85;color:var(--gate-t2)}
.g-cover-r{min-width:0;padding-top:6px}
.g-cover-r h3{margin:0;font-size:15px;color:#eaf9fd;font-weight:700;letter-spacing:.3px}
.g-cover-p{margin:9px 0 0;font-size:13px;line-height:1.8;color:var(--gate-t3)}
.g-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}
.g-tags span{
  font-size:12.5px;color:#bfe9f3;line-height:1.6;
  padding:5px 11px;border-radius:999px;
  background:rgba(34,211,238,.07);border:1px solid rgba(103,232,249,.18);
}
.g-cover-link{
  display:inline-flex;align-items:center;margin-top:20px;font-size:13.5px;font-weight:600;
  color:var(--gate-cyan-soft);text-decoration:none;
  border-bottom:1px solid rgba(103,232,249,.3);padding-bottom:2px;
}
.g-cover-link:hover{color:#fff;border-bottom-color:#fff}

/* 气道示意图（沿用第一期的节点交互） */
.g-airpanel{margin:20px 0 0;padding:16px 14px 10px;border-radius:16px;
  background:rgba(255,255,255,.028);border:1px solid var(--gate-ln)}
.g-aircap{margin:6px 0 0;text-align:center;font-size:11.5px;color:var(--gate-t4);letter-spacing:.4px}
.air-stage{position:relative;width:100%;max-width:440px;margin:0 auto}
.air-stage svg{width:100%;height:auto;display:block}
.air-trunk{fill:none;stroke:rgba(103,232,249,.34);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}
.air-lung{fill:rgba(34,211,238,.055);stroke:rgba(103,232,249,.22);stroke-width:1.2}
.air-ring{fill:none;stroke:rgba(103,232,249,.13);stroke-width:1}
.air-node{
  position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;
  background:rgba(34,211,238,.22);border:1.5px solid var(--gate-cyan-soft);cursor:pointer;padding:0;
  transition:transform .18s var(--gate-ease),background .18s var(--gate-ease),box-shadow .18s var(--gate-ease);
}
.air-node:hover,.air-node:focus{transform:scale(1.45);background:var(--gate-cyan);
  box-shadow:0 0 0 5px rgba(34,211,238,.18);outline:none}
/* 触摸命中区：视觉仍是 14px 圆点，实际可点范围扩到 40px（WCAG 2.5.5） */
.air-node::before{content:"";position:absolute;inset:-13px;border-radius:50%}
.air-tip{
  position:absolute;z-index:6;transform:translate(-50%,-140%);white-space:nowrap;
  background:#fff;color:#0f2c38;border-radius:8px;padding:6px 11px;font-size:12.5px;font-weight:600;
  box-shadow:0 8px 22px rgba(0,0,0,.3);pointer-events:none;opacity:0;transition:opacity .16s var(--gate-ease);
}
.air-tip b{font-family:ui-monospace,Menlo,Consolas,monospace;color:#0e7490;margin-left:6px}
.air-node:hover + .air-tip,.air-node:focus + .air-tip{opacity:1}

/* ---------- 底部转化区 ---------- */
.g-signup{
  scroll-margin-top:80px;
  display:grid;grid-template-columns:1fr 396px;gap:36px;align-items:center;
  margin-top:88px;padding:34px;border-radius:20px;position:relative;overflow:hidden;
  background:
    radial-gradient(80% 120% at 0% 0%,rgba(34,211,238,.17) 0%,transparent 62%),
    linear-gradient(150deg,rgba(11,74,92,.92),rgba(7,40,54,.94));
  border:1px solid rgba(103,232,249,.26);
  box-shadow:0 22px 60px rgba(0,0,0,.3);
}
.g-signup::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(103,232,249,.06) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(103,232,249,.06) 1px,transparent 1px);
  background-size:32px 32px;
  -webkit-mask-image:radial-gradient(90% 90% at 100% 100%,#000 10%,transparent 70%);
          mask-image:radial-gradient(90% 90% at 100% 100%,#000 10%,transparent 70%);
}
.g-signup-l{position:relative;z-index:2;min-width:0}
.g-signup-l p{margin:14px 0 0;font-size:14.5px;line-height:1.9;color:var(--gate-t2);max-width:30em}

/* 鸭子卡 */
.gate-duck{
  margin:22px 0 0;padding:14px 18px;border-radius:14px;
  background:linear-gradient(120deg,rgba(242,166,59,.11),rgba(34,211,238,.05));
  border:1px solid rgba(242,166,59,.24);display:flex;align-items:center;gap:16px;
}
.gate-duck .duck-img{flex:none;width:96px;height:116px;object-fit:contain;object-position:center bottom;
  transform-origin:50% 82%;animation:gateBreath 4.2s var(--gate-ease) infinite;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.34))}
.gate-duck:hover .duck-img{animation-duration:2.4s}
@keyframes gateBreath{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.018)}}
.gate-duck .duck-txt{min-width:0}
.gate-duck .duck-txt b{display:block;font-size:14.5px;color:var(--gate-amber-soft);margin-bottom:5px}
.gate-duck .duck-txt span{display:block;font-size:13px;color:var(--gate-t2);line-height:1.8}

/* 登录卡（白卡，压在深底上） */
.g-signup-r{position:relative;z-index:2}
.login-card{
  background:#fff;border-radius:16px;padding:24px 24px 20px;
  box-shadow:0 18px 44px rgba(0,0,0,.28);
}
.login-card-head{display:flex;align-items:center;gap:12px;margin-bottom:2px}
.login-card .card-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:none;
  border:2px solid #dceef3;box-shadow:0 0 0 3px #f0f8fa;background:#fff}
.login-card .brand{font-size:17.5px;font-weight:700;color:var(--cy-dd);letter-spacing:.4px}
.login-card .brand-sub{color:var(--mut);font-size:10.5px;letter-spacing:1px;margin:4px 0 0}
.login-card label{display:block;margin:12px 0 6px;font-size:12.5px;color:var(--ink-2);font-weight:500}
.login-card input{width:100%;height:45px;padding:0 12px;font-size:16px;
  border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font-family:inherit}
.login-card input:focus{outline:none;border-color:var(--cy);box-shadow:0 0 0 3px rgba(14,116,144,.13)}
.pwd-wrap{position:relative}
.pwd-wrap input{padding-right:64px}
.pwd-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);height:32px;padding:0 10px;
  font-size:12.5px;color:var(--cy);background:transparent;border:0;cursor:pointer;border-radius:7px;font-family:inherit}
.pwd-eye:hover{background:var(--surface)}
.login-actions{display:flex;gap:10px;margin-top:16px}
.login-actions .btn{flex:1;height:45px;margin:0;font-size:15px;font-weight:600;border-radius:9px;cursor:pointer}
.login-actions .btn.ghost{flex:0 0 auto;padding:0 16px;font-size:13.5px}
.login-alt{margin-top:10px;text-align:right;font-size:12.5px}
.login-alt a{color:var(--cy);text-decoration:none}
.slogan-line{text-align:center;color:var(--mut);font-size:11.5px;letter-spacing:2px;margin:10px 0 0}
.gate-newuser{font-size:12px;color:var(--mut);line-height:1.75;margin-top:10px}
.pro-line{margin-top:12px;padding-top:12px;border-top:1px solid var(--line-2);
  display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--ink-2)}
.pro-line img{width:28px;height:28px;border-radius:50%;object-fit:cover;flex:none;
  border:1px solid var(--line);background:#fff}
.pro-line b{color:var(--cy-dd)}
.pro-follow{margin-left:auto;font-size:11.5px;color:var(--cy);border:1px solid #cfe5ec;padding:3px 10px;
  border-radius:999px;text-decoration:none;background:#f4fafc;white-space:nowrap}
.pro-follow:hover{background:#e6f4f8;border-color:var(--cy)}

/* ---------- 会员对照（深色版） ---------- */
.g-plan{margin-top:64px}
.gate-compare2{
  border:1px solid var(--gate-ln);border-radius:16px;overflow:hidden;
  background:rgba(255,255,255,.028);
  max-width:820px;margin:0 auto;
}
.gate-compare2 .gc-head{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding:15px 20px 13px;border-bottom:1px solid var(--gate-ln);
  background:linear-gradient(100deg,rgba(242,166,59,.10),transparent 70%);
}
.gate-compare2 .gc-head b{font-size:14.5px;color:var(--gate-amber-soft);font-weight:700}
.gate-compare2 .gc-tag{margin-left:auto;font-size:11px;color:var(--gate-amber);
  background:rgba(242,166,59,.11);border:1px solid rgba(242,166,59,.3);
  border-radius:999px;padding:2px 10px;white-space:nowrap}
.gate-compare2 table{width:100%;border-collapse:collapse;font-size:13px}
.gate-compare2 th,.gate-compare2 td{padding:10px 20px;text-align:left;
  border-top:1px solid rgba(103,232,249,.09);line-height:1.65}
.gate-compare2 th{font-size:11.5px;font-weight:600;color:var(--gate-t4);
  background:rgba(255,255,255,.03);letter-spacing:.4px}
.gate-compare2 td{color:var(--gate-t2)}
.gate-compare2 td:first-child{color:var(--gate-t2)}
.gate-compare2 td:not(:first-child){color:var(--gate-t3)}
.gate-compare2 .c-member{color:var(--gate-amber-soft)!important;font-weight:600}
.gate-compare2 .gc-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  padding:13px 20px;border-top:1px solid var(--gate-ln);background:rgba(255,255,255,.024)}
.gate-compare2 .gc-price{font-size:12.5px;color:var(--gate-t3)}
.gate-compare2 .gc-price b{color:var(--gate-amber-soft);font-size:14.5px}
.gate-compare2 .gc-buy{margin-left:auto;font-size:13px;font-weight:600;text-decoration:none;
  background:var(--gate-amber);color:#3a2405;padding:8px 16px;border-radius:9px;
  transition:background .16s var(--gate-ease)}
.gate-compare2 .gc-buy:hover{background:var(--gate-amber-soft)}

/* ---------- 页脚 ---------- */
.gate-legal{position:relative;z-index:2;text-align:center;margin:34px 0 0;color:var(--gate-t4);font-size:12.5px;line-height:1.9}
.gate-legal a{color:var(--gate-cyan);text-decoration:none}
.gate-legal a:hover{text-decoration:underline}
#loginView .disclaimer{
  position:relative;z-index:2;width:100%;max-width:1160px;margin:6px auto 0;padding:0 28px 30px;
  color:rgba(127,179,196,.62);font-size:11.5px;line-height:1.8;text-align:center;
}

/* ---------- 未登录态：站点页脚随门厅变深，避免深底接白脚 ---------- */
#siteFoot.foot-gate{
  background:linear-gradient(180deg,#05171e 0%,#04111a 100%);
  border-top:1px solid rgba(103,232,249,.15);
  color:#7fb3c4;
  padding:18px 28px 26px;
}
#siteFoot.foot-gate .foot-brand{color:#dff3f8}
#siteFoot.foot-gate a{color:#8fc3d2}
#siteFoot.foot-gate a:hover{color:var(--gate-cyan-soft)}
#siteFoot.foot-gate .foot-mid span{color:#7fb3c4}
#siteFoot.foot-gate .foot-legal,
#siteFoot.foot-gate .foot-legal a,
#siteFoot.foot-gate .foot-legal span{color:rgba(127,179,196,.86)}
#siteFoot.foot-gate .disclaimer{color:rgba(127,179,196,.55)}

/* ---------- 手机端导航（2026-10-28） ----------
   ≤860px 原来 .g-nav 直接 display:none，手机访客整页没有任何站内导航，
   只能顺着一万多像素往下滑。改为：菜单按钮 + 下拉面板，
   顺带把 4 个床旁常用工具提到第一层（原来要先进工具箱再翻分组）。 */
.g-mbtn{
  /* flex-direction 必须写：基础态 display:none、媒体查询里才 display:flex，
     漏了它就按 row 排，三条横线会并排挤在一起，展开后变成两根不相交的斜杠。 */
  display:none;flex-direction:column;width:38px;height:38px;flex:none;padding:0;
  border-radius:10px;border:1px solid var(--gate-ln2);
  background:var(--gate-panel);align-items:center;justify-content:center;
  cursor:pointer;-webkit-tap-highlight-color:transparent;
}
.g-mbtn i{display:block;width:16px;height:1.6px;border-radius:2px;background:var(--gate-t2);
  transition:transform .22s var(--gate-ease),opacity .16s}
.g-mbtn i+i{margin-top:3.4px}
.g-mbtn.on i:nth-child(1){transform:translateY(5px) rotate(45deg)}
.g-mbtn.on i:nth-child(2){opacity:0}
.g-mbtn.on i:nth-child(3){transform:translateY(-5px) rotate(-45deg)}

.g-sheet{
  display:none;position:absolute;left:0;right:0;top:100%;z-index:30;
  padding:12px 18px 14px;
  background:#07161c;   /* 必须不透明：半透明会把 hero 文案透上来，像故障 */
  border-bottom:1px solid var(--gate-ln2);
  box-shadow:0 18px 32px rgba(0,0,0,.42);
}
.g-sheet.on{display:block}
.g-sheet-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.g-sheet-nav a{
  display:flex;align-items:center;justify-content:center;height:44px;
  border-radius:10px;border:1px solid var(--gate-ln);background:var(--gate-panel);
  color:var(--gate-t1);font-size:14px;text-decoration:none;
}
.g-sheet-nav a:active{background:var(--gate-panel2)}
.g-sheet-lbl{margin:15px 0 8px;font-size:12px;color:var(--gate-t4)}
.g-sheet-tools{display:flex;flex-wrap:wrap;gap:8px}
.g-sheet-tools a{
  padding:7px 13px;border-radius:999px;font-size:13px;text-decoration:none;
  background:rgba(34,211,238,.1);border:1px solid rgba(34,211,238,.24);color:var(--gate-cyan-soft);
}
.g-sheet-tools a:active{background:rgba(34,211,238,.2)}
.g-sheet-login{display:block;margin-top:10px;padding:9px;border-radius:9px;
  text-align:center;font-size:13px;color:var(--gate-t3);text-decoration:none}

/* ---------- 响应式 ---------- */
@media(max-width:1000px){
  .g-hero{grid-template-columns:1fr;gap:34px;padding-top:44px}
  .g-hero-r{order:2;max-width:640px}
  .g-grid{grid-template-columns:repeat(2,1fr)}
  .g-cover{grid-template-columns:1fr;gap:30px}
  .g-cover-r{padding-top:0}
  .g-signup{grid-template-columns:1fr;gap:26px;padding:28px}
  .g-signup-r{max-width:440px}
}
@media(max-width:860px){
  .g-nav{display:none}
  .g-mbtn{display:flex}
  .g-tlink{display:none}   /* 登录收进菜单底部，给 logo / 注册 / 菜单按钮腾位置 */
  .g-top-act{margin-left:auto}
  .g-top-in{height:58px;gap:12px}
  .g-logo-t i{display:none}
  .g-steps{grid-template-columns:1fr}
  .g-sec{margin-top:64px}
  .g-signup{margin-top:64px}
  .gate-legal{margin-top:26px}
}
@media(max-width:620px){
  .g-top-in{padding:0 16px;gap:8px}
  .g-wrap{padding:0 16px 4px}
  .g-logo picture{width:32px;height:32px}
  .g-logo-t b{font-size:14.5px}
  .g-tbtn{height:36px;padding:0 14px;font-size:13px}
  .g-top-act{margin-left:auto}
  .g-tlink{padding:6px 8px;font-size:13px}
  .g-hero{padding-top:32px;gap:26px}
  .gate-h1{margin-top:14px}
  .gate-cta{flex-direction:column;align-items:stretch;margin-top:22px}
  .gate-cta .gbtn{width:100%;height:50px}
  .g-trust{gap:6px 14px;font-size:12px}
  /* 2026-10-28：2×2 改成 4 列一行。原来第二行没有上边线、只有中部竖线，
     在手机上看着像「数字带被截断」，而且 2×2 白占 150px 首屏高度。
     四个数字最长 4 个字符（1696），(390−32)/4≈89px 一列足够。 */
  .gate-nums{grid-template-columns:repeat(4,1fr);gap:0;margin-top:30px;padding-top:18px}
  .gate-num{padding-left:11px}
  .gate-num:nth-child(odd){padding-left:11px;border-left:1px solid var(--gate-ln2)}
  .gate-num:first-child{padding-left:0;border-left:0}
  .gate-num b{font-size:23px;letter-spacing:-.5px}
  .gate-num span{font-size:10.5px;margin-top:5px;line-height:1.4;letter-spacing:0}
  .g-grid{grid-template-columns:1fr;gap:10px;margin-top:22px}
  /* 单列时改为横排：图标在左、标题与描述在右，页面长度减半 */
  .g-card{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:13px;row-gap:4px;
    align-items:center;padding:15px 16px 13px}
  .g-card .g-ico{grid-row:1 / span 2;width:38px;height:38px}
  .g-card b{grid-column:2;font-size:15.5px;line-height:1.4}
  .g-card .g-desc{grid-column:2;font-size:13px;line-height:1.7}
  .g-card .g-meta{grid-column:1 / -1;padding-top:8px;margin-top:2px}
  /* 手机端三步压成「编号 + 标题」单行条：三段都是常识性提示，
     描述句在窄屏只会把这一块撑到 340px，不如留给下面的功能矩阵。 */
  .g-steps{margin-top:16px;gap:6px}
  .g-steps li{padding:11px 14px;gap:11px;align-items:center;border-radius:11px}
  .g-step-n{font-size:15px}
  .g-steps b{font-size:14px;margin-bottom:0}
  .g-steps p{display:none}
  .g-sec-head p{font-size:14px}
  .g-tags span{font-size:12px;padding:4px 10px}
  .air-stage{max-width:330px}
  .g-airpanel{padding:12px 10px 8px}
  .g-signup{padding:22px 18px;border-radius:16px;gap:20px;margin-top:56px}
  .g-signup-l p{font-size:13.5px}
  .gate-duck{flex-direction:row;align-items:center;gap:13px;padding:13px 14px;margin-top:16px}
  .gate-duck .duck-img{width:58px;height:70px}
  .gate-duck .duck-txt b{font-size:13.5px;margin-bottom:4px}
  .gate-duck .duck-txt span{font-size:12.5px;line-height:1.7}
  .login-card{padding:20px 18px 18px;border-radius:14px}
  .g-signup-r{max-width:100%}
  /* page-index.css 的手机规则会把「关注公众号」撑成整行大按钮，这里复位成行内 pill */
  .login-card .pro-line{flex-wrap:nowrap;row-gap:0;margin-top:12px;padding-top:11px;
    font-size:12px;gap:7px}
  .login-card .pro-line img{width:26px;height:26px}
  .login-card .pro-line span{flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;
    text-overflow:ellipsis}
  .login-card .pro-line .pro-follow{flex:none;width:auto;height:auto;margin-left:auto;
    display:inline-block;font-size:11px;padding:3px 9px;border-radius:999px}
  .login-card .pro-line .pro-follow::after{content:""}
  .gate-compare2 table{table-layout:fixed}
  .gate-compare2 th:nth-child(1),.gate-compare2 td:nth-child(1){width:46%}
  .gate-compare2 th:nth-child(2),.gate-compare2 td:nth-child(2){width:23%;white-space:nowrap}
  .gate-compare2 th:nth-child(3),.gate-compare2 td:nth-child(3){width:31%}
  .gate-compare2 th,.gate-compare2 td{padding:9px 10px;font-size:11.5px}
  .gate-compare2 .gc-head{padding:13px 14px}
  .gate-compare2 .gc-head b{font-size:13.5px}
  .gate-compare2 .gc-tag{display:none}
  .gate-compare2 .gc-foot{padding:12px 14px}
  .gate-compare2 .gc-buy{margin-left:0;width:100%;text-align:center}
  .gate-legal{font-size:11.5px;padding:0 16px}
  #loginView .disclaimer{padding:0 16px 26px}
}

/* ---------- 无障碍：降低动效 ---------- */
@media(prefers-reduced-motion:reduce){
  .g-eyebrow .dot,.gate-duck .duck-img,.g-card,.gbtn,.g-tbtn,#loginView.gate-on::after{animation:none!important;transition:none!important}
}

/* ===========================================================
   免登录试答（v2.57 P0，2026-10-27）
   位置：数据带之后、睡眠横幅之前。访客不注册就能真答 3 道真题。
   设计：一栏窄卡居中（760px）——做题是单任务，两栏会分心。
   对错用绿 / 红：这是答题反馈，不是行情，别套涨跌色。
   =========================================================== */
.g-try{position:relative}
.g-try-head{max-width:640px;margin:0 auto;text-align:center}
.g-try-tag{
  display:inline-flex;align-items:center;gap:7px;
  font-size:11.5px;letter-spacing:1.1px;color:#ffd48a;
  background:rgba(242,166,59,.1);border:1px solid rgba(242,166,59,.32);
  border-radius:999px;padding:4px 12px 4px 11px;
}
.g-try-tag .dot{width:5px;height:5px;border-radius:50%;background:var(--gate-amber);flex:none}
.g-try-head h2{
  margin:16px 0 0;font-size:clamp(22px,calc(1.5vw + 15px),32px);line-height:1.3;
  font-weight:800;color:#fff;letter-spacing:-.3px;text-wrap:balance;
}
.g-try-head h2 em{font-style:normal;color:var(--gate-cyan-soft)}
.g-try-head p{margin:12px 0 0;font-size:15px;line-height:1.85;color:var(--gate-t2)}

.g-try-box{
  max-width:760px;margin:26px auto 0;border-radius:18px;overflow:hidden;
  background:linear-gradient(168deg,rgba(255,255,255,.062),rgba(255,255,255,.026));
  border:1px solid var(--gate-ln2);
  box-shadow:0 18px 48px rgba(0,0,0,.3);
}
.g-try-bar{
  display:flex;align-items:center;gap:14px;
  padding:13px 22px;border-bottom:1px solid var(--gate-ln);
  background:rgba(6,26,33,.42);font-size:12.5px;color:var(--gate-t3);
}
.g-try-step b{color:#eaf9fd;font-size:14px;font-weight:700;margin:0 1px}
.g-try-dots{display:flex;align-items:center;gap:6px}
.g-try-dots i{
  width:22px;height:3px;border-radius:2px;background:rgba(255,255,255,.16);
  transition:background .2s var(--gate-ease),width .2s var(--gate-ease);
}
.g-try-dots i.on{background:var(--gate-cyan);width:30px}
.g-try-dots i.done{background:rgba(52,211,153,.72)}
.g-try-score{margin-left:auto;color:var(--gate-t3)}
.g-try-score b{color:#6ee7b7;font-size:14px;font-weight:700;margin:0 1px}
.g-try-body{padding:22px 24px 24px}

/* ---- 题面 ---- */
.gt-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.gt-dom{
  font-size:11px;letter-spacing:.4px;color:#a5f3fc;
  background:rgba(34,211,238,.11);border:1px solid rgba(34,211,238,.3);
  border-radius:6px;padding:2px 8px;
}
.gt-diff{font-size:11px;color:var(--gate-t4);border:1px solid var(--gate-ln);
  border-radius:6px;padding:2px 8px}
.gt-stem{
  margin:13px 0 16px;font-size:15.5px;line-height:1.85;color:#eaf9fd;
  letter-spacing:.1px;font-weight:500;
}
.gt-opts{display:grid;gap:9px}
.gt-opt{
  display:flex;align-items:flex-start;gap:12px;width:100%;
  padding:13px 15px;border-radius:11px;cursor:pointer;text-align:left;
  background:rgba(255,255,255,.045);border:1px solid var(--gate-ln);
  color:var(--gate-t2);font-size:14.5px;line-height:1.6;
  font-family:inherit;letter-spacing:.1px;
  transition:background .18s var(--gate-ease),border-color .18s var(--gate-ease),
             transform .18s var(--gate-ease),color .18s var(--gate-ease);
}
.gt-opt i{
  flex:none;width:23px;height:23px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-style:normal;font-size:12px;font-weight:700;
  border:1px solid rgba(103,232,249,.32);color:var(--gate-cyan-soft);
  transition:background .18s var(--gate-ease),border-color .18s var(--gate-ease),color .18s var(--gate-ease);
}
.gt-opt span{flex:1;min-width:0;padding-top:2px}
/* 干扰项的一句话否定理由（2026-10-28）：只跟静态首题走，字小、灰、不抢行 */
.gt-opt .gt-no{
  display:block;margin-top:5px;font-style:normal;font-size:12px;line-height:1.6;
  color:rgba(190,215,224,.72);letter-spacing:.1px;text-wrap:pretty;
}
.gt-opt.is-dim .gt-no{color:rgba(170,196,206,.56)}
.gt-opt.is-wrong .gt-no{color:rgba(255,196,192,.82)}
.gt-opt:hover{
  background:rgba(34,211,238,.09);border-color:rgba(103,232,249,.5);
  color:#eaf9fd;transform:translateY(-1px);
}
.gt-opt:focus-visible{outline:2px solid var(--gate-cyan);outline-offset:2px}
.gt-opts.locked .gt-opt{cursor:default;transform:none}
.gt-opts.locked .gt-opt:hover{background:rgba(255,255,255,.045);border-color:var(--gate-ln);color:var(--gate-t2)}
.gt-opt.is-right{
  background:rgba(52,211,153,.14);border-color:rgba(52,211,153,.62);color:#eafff7;
}
.gt-opt.is-right i{background:#34d399;border-color:#34d399;color:#04222b}
.gt-opts.locked .gt-opt.is-right:hover{background:rgba(52,211,153,.14);border-color:rgba(52,211,153,.62);color:#eafff7}
.gt-opt.is-wrong{
  background:rgba(248,113,113,.13);border-color:rgba(248,113,113,.58);color:#ffe4e4;
}
.gt-opt.is-wrong i{background:rgba(248,113,113,.9);border-color:rgba(248,113,113,.9);color:#2a0808}
.gt-opts.locked .gt-opt.is-wrong:hover{background:rgba(248,113,113,.13);border-color:rgba(248,113,113,.58);color:#ffe4e4}
.gt-opt.is-dim{opacity:.42}

/* ---- 反馈 ---- */
.gt-fb{margin-top:16px;padding-top:15px;border-top:1px dashed var(--gate-ln2)}
.gt-vd{
  display:flex;align-items:center;gap:8px;
  font-size:14px;font-weight:700;letter-spacing:.2px;
}
.gt-vd .gt-ic{
  width:20px;height:20px;border-radius:50%;flex:none;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:900;
}
.gt-vd.ok{color:#6ee7b7}
.gt-vd.ok .gt-ic{background:rgba(52,211,153,.18);border:1px solid rgba(52,211,153,.5)}
.gt-vd.no{color:#fca5a5}
.gt-vd.no .gt-ic{background:rgba(248,113,113,.16);border:1px solid rgba(248,113,113,.5)}
.gt-vd.no b{color:#fff;margin-left:1px}
.gt-why{
  margin-top:10px;font-size:14px;line-height:1.85;color:var(--gate-t2);
}
.gt-why b{
  color:var(--gate-amber-soft);font-weight:700;margin-right:7px;font-size:13px;
  letter-spacing:.3px;
}
.gt-lock{
  margin-top:13px;padding:11px 14px;border-radius:10px;
  font-size:12.5px;line-height:1.65;color:#ffd9a0;
  background:linear-gradient(135deg,rgba(242,166,59,.12),rgba(255,255,255,.02));
  border:1px dashed rgba(242,166,59,.4);
}
/* 三层解析样板（2026-10-28）：试答里把当前这道题的「线索/笔记/总结」摊开，
   让访客先看见"这套解析到底长什么样"，再决定要不要注册。
   费曼复述区仍然不展开——卖的是"自己讲一遍并留档"这个动作。 */
.gt-cornell{
  margin-top:13px;border-radius:10px;border:1px solid rgba(34,211,238,.28);
  background:linear-gradient(180deg,rgba(34,211,238,.07),rgba(34,211,238,.02));
  overflow:hidden;
}
.gt-cornell>summary{
  padding:11px 14px;font-size:13px;font-weight:600;color:#a8e6f2;cursor:pointer;
  list-style:none;-webkit-tap-highlight-color:transparent;
}
.gt-cornell>summary::-webkit-details-marker{display:none}
.gt-cornell>summary::before{
  content:"▸";display:inline-block;margin-right:7px;font-size:11px;color:var(--gate-cyan);
  transition:transform .18s var(--gate-ease);
}
.gt-cornell[open]>summary::before{transform:rotate(90deg)}
.gt-cornell>summary:hover{color:#dff6fb}
.gt-cr{
  display:grid;grid-template-columns:38px 1fr;gap:10px;
  padding:9px 14px;border-top:1px solid rgba(34,211,238,.14);
  font-size:13px;line-height:1.82;color:var(--gate-t2);
}
.gt-cr b{
  color:var(--gate-cyan);font-weight:700;font-size:12px;letter-spacing:.5px;
  padding-top:2px;
}
/* 桌面端一行能到 1000px，读起来累；按 76 个字符限宽（手机上本来就窄，不受影响） */
.gt-cr span{max-width:76ch}
.gt-cr-lock{
  padding:9px 14px;border-top:1px solid rgba(34,211,238,.14);
  font-size:12px;line-height:1.7;color:#ffd9a0;background:rgba(242,166,59,.06);
}
.gt-act{margin-top:14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.gt-next{
  font-family:inherit;font-size:14px;font-weight:700;letter-spacing:.2px;
  padding:10px 22px;border-radius:10px;cursor:pointer;
  background:var(--gate-cyan);color:#04252e;border:0;
  box-shadow:0 6px 16px rgba(34,211,238,.24);
  transition:background .16s var(--gate-ease),transform .16s var(--gate-ease),box-shadow .16s var(--gate-ease);
}
.gt-next:hover{background:#4bdcf0;transform:translateY(-1px);box-shadow:0 8px 20px rgba(34,211,238,.32)}
.gt-next:focus-visible{outline:2px solid #a5f3fc;outline-offset:2px}

/* ---- 结果页 ---- */
.gt-res{text-align:center;padding:6px 0 2px}
.gt-res-num{display:flex;align-items:baseline;justify-content:center;gap:7px}
.gt-res-num b{
  font-size:52px;line-height:1;font-weight:800;color:var(--gate-cyan-soft);
  letter-spacing:-2px;
}
.gt-res-num span{font-size:14px;color:var(--gate-t3)}
.gt-res-head{margin-top:12px;font-size:19px;font-weight:800;color:#fff;letter-spacing:.2px}
.gt-res-line{
  margin:10px auto 0;max-width:52em;font-size:14.5px;line-height:1.85;color:var(--gate-t2);
  text-wrap:pretty;
}
.gt-res-act{
  margin-top:20px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;
}
.gt-res-act .gbtn{padding:12px 26px;font-size:14.5px}
/* .g-primary 的青色是在 .gate-cta 作用域里写的（.gate-cta .g-primary），
   结果页不在那个作用域内，不补这段就是白底黑字的普通按钮——主按钮必须最亮 */
.gt-res-act .g-primary{
  background:var(--gate-cyan);color:#04252e;border-color:transparent;
  box-shadow:0 6px 18px rgba(34,211,238,.28);
}
.gt-res-act .g-primary:hover{background:#4bdcf0;box-shadow:0 8px 22px rgba(34,211,238,.36)}
.gt-again{
  font-family:inherit;font-size:13.5px;padding:11px 20px;border-radius:10px;cursor:pointer;
  background:transparent;color:var(--gate-t2);border:1px solid var(--gate-ln2);
  transition:background .16s var(--gate-ease),color .16s var(--gate-ease),border-color .16s var(--gate-ease);
}
.gt-again:hover{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(103,232,249,.42)}
.gt-res-note{
  margin-top:20px;padding-top:16px;border-top:1px dashed var(--gate-ln);
  font-size:12.5px;line-height:1.8;color:var(--gate-t3);
  text-wrap:pretty;
}
.gt-res-note b{color:#eaf9fd;font-weight:700}

/* ---- 结果页「解锁卡」（2026-10-28）：答完 3 道就是最热的转化点，
        把原来一行小字换成一张带清单的卡，主按钮留在卡内 ---- */
.gt-unlock{
  margin-top:20px;text-align:left;
  padding:17px 18px 16px;border-radius:14px;
  background:linear-gradient(155deg,rgba(34,211,238,.13),rgba(34,211,238,.02));
  border:1px solid rgba(103,232,249,.30);
}
.gt-unlock-h{
  display:flex;align-items:center;gap:8px;
  font-size:12px;font-weight:700;letter-spacing:.8px;color:#a8e6f2;
}
.gt-unlock-h span.lock{
  flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  width:26px;height:26px;font-size:15px;line-height:1;
}
.gt-unlock ul{list-style:none;margin:13px 0 0;padding:0;display:grid;gap:9px}
.gt-unlock li{display:flex;gap:9px;font-size:13.5px;line-height:1.6;color:#e2f7fc}
.gt-unlock li i{flex:0 0 auto;font-style:normal;font-weight:800;color:#22d3ee;line-height:1.5}
.gt-unlock li b{color:#fff;font-weight:700}
.gt-unlock li span{text-wrap:pretty}
.gt-unlock .gt-res-act{margin-top:16px;gap:10px}
.gt-unlock-alt{margin-top:11px;font-size:12.5px;color:var(--gate-t3);text-wrap:pretty}
.gt-unlock-alt a{color:#a8e6f2;text-decoration:none;border-bottom:1px dotted rgba(168,230,242,.55);white-space:nowrap}
.gt-unlock-alt a:hover{border-bottom-color:#a8e6f2}

/* 答完 3 道时题卡自己亮两下：给「做完了」一个物理反馈，不用弹窗打断 */
@keyframes gtDone{0%{box-shadow:0 0 0 0 rgba(34,211,238,.40)}100%{box-shadow:0 0 0 18px rgba(34,211,238,0)}}
.g-try-box.gt-done{animation:gtDone .95s ease-out 2}

/* ---- 兜底：题没加载出来 ---- */
.gt-empty .gt-stem{margin-bottom:8px}
.gt-empty .gt-res-line{text-align:left;margin:0 0 14px}

.g-try-foot{
  margin:16px auto 0;max-width:760px;text-align:center;
  font-size:12px;line-height:1.7;color:var(--gate-t4);
}

@media(max-width:640px){
  .g-try-box{margin-top:20px;border-radius:15px}
  .g-try-bar{padding:11px 16px;gap:10px;font-size:11.5px}
  .g-try-dots i{width:16px}
  .g-try-dots i.on{width:22px}
  .g-try-body{padding:17px 16px 19px}
  .gt-stem{font-size:14.5px;margin:11px 0 14px}
  .gt-opt{font-size:13.5px;padding:11px 12px;gap:10px}
  .gt-opt i{width:21px;height:21px;font-size:11px}
  .gt-why{font-size:13.5px}
  .gt-res-num b{font-size:44px}
  .gt-res-head{font-size:17px}
  .gt-res-line{font-size:13.5px}
  .gt-res-act .gbtn,.gt-again{width:100%}
}

@media(prefers-reduced-motion:reduce){
  .gt-opt,.gt-next,.g-try-dots i,.gt-again{transition:none!important}
  .gt-opt:hover,.gt-next:hover{transform:none!important}
  .g-try-box.gt-done{animation:none!important}
}

/* =========================================================
   学习路径三选一（2026-10-28）
   题库铺到 1696 道之后，用户缺的不是「更多题」，是「先做哪个」。
   所以不做成第 10 张工具卡，而是一整段独立的选线区：
   每行 = 人群 + 路线（关键节点高亮） + 箭头。
   ========================================================= */
.g-path3{display:grid;gap:10px;margin-top:26px}
.g-pr{
  display:grid;grid-template-columns:138px 1fr auto;align-items:center;gap:18px;
  padding:16px 20px;border-radius:14px;text-decoration:none;color:inherit;
  background:var(--gate-panel);border:1px solid var(--gate-ln);
  transition:transform .2s var(--gate-ease),background .2s var(--gate-ease),border-color .2s var(--gate-ease);
}
.g-pr:hover{transform:translateX(3px);background:var(--gate-panel2);border-color:rgba(103,232,249,.42)}
.g-pr-who{min-width:0}
.g-pr-who b{font-size:15px;font-weight:700;color:#fff;letter-spacing:.2px}
/* text-wrap:pretty 避免末行只剩「上）」「策」这种两字孤行；老浏览器忽略即可 */
.g-pr-route{font-size:13.5px;line-height:1.8;color:var(--gate-t2);text-wrap:pretty}
.g-pr-route em{font-style:normal;color:var(--gate-cyan-soft);font-weight:600}
/* 时长放右栏：跟「人群」并列时会把标签挤成两行，独立一列反而更整齐 */
.g-pr-dur{
  justify-self:end;white-space:nowrap;font-size:11.5px;letter-spacing:.3px;
  color:var(--gate-t4);font-family:ui-monospace,Menlo,Consolas,monospace;
}
.g-path-foot{
  margin:14px 0 0;font-size:12.5px;line-height:1.7;color:var(--gate-t3);
}
.g-path-foot a{color:#a8e6f2;text-decoration:none;border-bottom:1px dotted rgba(168,230,242,.5)}

/* =========================================================
   底部收口条（2026-10-28）
   权益表前先给一句话和一个按钮：滚到这里的人已经看过全部内容，
   缺的不是信息，是「现在就注册」的那一下。
   ========================================================= */
.g-close{
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  margin:0 0 16px;padding:19px 22px;border-radius:14px;
  background:linear-gradient(120deg,rgba(34,211,238,.12),rgba(34,211,238,.02) 60%);
  border:1px solid rgba(103,232,249,.26);
}
.g-close p{margin:0;font-size:15px;line-height:1.7;color:#eaf9fd;letter-spacing:.2px}
.g-close p b{
  font-family:ui-monospace,Menlo,Consolas,monospace;font-size:18px;font-weight:700;
  color:var(--gate-cyan-soft);padding:0 3px;letter-spacing:-.4px;
}
.g-close p i{font-style:normal;color:var(--gate-t3);font-size:13px;display:block;margin-top:3px}
.g-close .gbtn{flex:0 0 auto;height:44px;padding:0 22px;font-size:14px}

/* =========================================================
   最近更新条（2026-10-28）：一行三个时间点，只为「这站还在动」。
   不做假数据、不写「已帮助 X 人」——没有真实统计就不编。
   ========================================================= */
.g-fresh{
  display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;
  margin-top:76px;padding:13px 16px;border-radius:11px;
  background:rgba(255,255,255,.03);border:1px solid var(--gate-ln);
  font-size:12.5px;line-height:1.6;color:var(--gate-t3);
}
.g-fresh-tag{color:#a8e6f2;font-weight:700;letter-spacing:.5px}
.g-fresh span b{
  font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:700;
  color:var(--gate-cyan-soft);margin-right:5px;letter-spacing:-.2px;
}

/* =========================================================
   FAQ（2026-10-28）：默认收起，不占页面长度；
   只为长尾搜索与「这站到底是干什么的」这类疑问服务。
   ========================================================= */
.g-faq{margin-top:34px;scroll-margin-top:80px}
.g-faq h2{
  margin:0;font-size:clamp(20px,calc(1.4vw + 14px),27px);line-height:1.35;
  font-weight:800;color:#fff;letter-spacing:-.3px;
}
.g-faq h2 em{font-style:normal;color:var(--gate-cyan-soft)}
.g-faq dl{margin:22px 0 0;border-top:1px solid var(--gate-ln2)}
.g-faq details{border-bottom:1px solid var(--gate-ln2)}
.g-faq summary{
  position:relative;cursor:pointer;list-style:none;
  padding:15px 34px 15px 0;font-size:14.5px;font-weight:600;color:#eaf9fd;line-height:1.65;
}
.g-faq summary::-webkit-details-marker{display:none}
.g-faq summary::after{
  content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);
  font-size:17px;line-height:1;color:var(--gate-cyan-soft);font-weight:400;
  transition:transform .18s var(--gate-ease);
}
.g-faq details[open] summary::after{content:"−"}
.g-faq summary:hover{color:#fff}
.g-faq dd{
  margin:0;padding:0 0 17px;font-size:13.5px;line-height:1.9;
  color:var(--gate-t2);max-width:48em;
}
.g-faq dd b{color:#dff6fb;font-weight:600}
.g-faq dd a{color:#a8e6f2;text-decoration:none;border-bottom:1px dotted rgba(168,230,242,.5)}
/* 「添加到桌面」这类操作提示单独成块：跟正文拉开，才有人愿意照着点 */
.g-faq-tip{
  display:block;margin-top:11px;padding:10px 13px 10px 12px;border-radius:9px;
  background:rgba(34,211,238,.07);border-left:2px solid var(--gate-cyan-soft);
  font-size:12.5px;line-height:1.85;color:#bfe3ec;
}
.g-faq-tip b{color:#e8fbff;font-weight:600;white-space:nowrap}
/* 其余问答已迁到 landing.html#faq（2026-10-28），这里只留一句导流；
   锚文本保留关键词，权重仍然从首页递出去 */
.g-faq-more{margin:16px 0 0;font-size:13px;line-height:1.9;color:var(--gate-t3)}
.g-faq-more a{color:#a8e6f2;text-decoration:none;border-bottom:1px dotted rgba(168,230,242,.5)}
.g-faq-more a:hover{border-bottom-style:solid;border-bottom-color:rgba(168,230,242,.9)}

@media(max-width:620px){
  .g-close{padding:16px 16px;gap:12px;margin-bottom:12px}
  .g-close p{font-size:13.5px}
  .g-close p b{font-size:16px}
  .g-close p i{font-size:12px}
  .g-close .gbtn{width:100%;height:46px}
  .g-fresh{margin-top:56px;font-size:11.5px;gap:6px 12px;padding:11px 13px}
  /* 窄屏只留最近两条：三条会把这一行撑到三行，收益抵不上高度。
     nth-child 把「🆕 最近更新」这个标签算作第 1 个子元素，所以从 4 开始藏。 */
  .g-fresh span:nth-child(n+4){display:none}
  /* 选线区：三行改两行文字一块，箭头收掉（整行可点，不需要再指一次） */
  .g-path3{margin-top:20px;gap:8px}
  /* 显式定位：只写 grid-column:1/-1 会让时长被自动排到第三行 */
  .g-pr{grid-template-columns:1fr auto;gap:6px 10px;padding:14px 15px}
  .g-pr-who{grid-area:1/1/2/2}
  .g-pr-dur{grid-area:1/2/2/3;font-size:11px}
  .g-pr-route{grid-area:2/1/3/3;font-size:12.5px;line-height:1.75}
  .g-pr-who b{font-size:14px}
  .g-pr:hover{transform:none}
  .g-faq{margin-top:24px}
  .g-faq summary{font-size:13.5px;padding:13px 30px 13px 0}
  .g-faq dd{font-size:12.5px;line-height:1.85}
  .g-faq-tip{margin-top:9px;padding:9px 11px;font-size:12px;line-height:1.8}
}

/* ---------- 价格三卡（2026-10-31 v3.9.68）：月/季/年，年卡 amber 高亮 ---------- */
.gate-compare2 .gc-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:16px 20px 4px}
.gate-compare2 .gcc{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;
  padding:14px 10px 12px;border:1px solid var(--gate-ln);border-radius:12px;text-align:center;
  background:rgba(255,255,255,.02)}
.gate-compare2 .gcc-n{font-size:12.5px;color:var(--gate-t3)}
.gate-compare2 .gcc-p{font-size:22px;font-weight:700;color:var(--gate-t1);line-height:1.25}
.gate-compare2 .gcc-d{font-size:11.5px;color:var(--gate-t4)}
.gate-compare2 .gcc-hot{border-color:var(--gate-amber);box-shadow:0 6px 18px rgba(242,166,59,.14)}
.gate-compare2 .gcc-hot .gcc-p{color:var(--gate-amber-soft)}
.gate-compare2 .gcc-best{position:absolute;top:-9px;left:50%;transform:translateX(-50%);
  background:var(--gate-amber);color:#3a2405;font-size:11px;font-weight:700;
  padding:2px 10px;border-radius:999px;white-space:nowrap}
@media(max-width:640px){
  .gate-compare2 .gc-cards{gap:8px;padding:14px 12px 2px}
  .gate-compare2 .gcc-p{font-size:19px}
}
