/* ============================================================
 * 添机 · AI 超市 — 母站首页（工具目录）
 * 浅色大厂风（2026-09-14 董事长定：弃「天机」深色粒子风，参考 Codex 官网）
 * 白底 + 墨蓝文字 + 胶囊按钮 + 大圆角卡片 + 大留白
 * 深色一律带冷蓝相、阴影不用纯黑 —— 无色彩相的黑是"廉价感"主因
 * ============================================================ */
:root {
  --bg:#ffffff;
  --bg-soft:#f5f7fb;
  --ink:#0f1729;
  --ink-2:#47546b;
  --ink-3:#8b95a8;
  --line:#e7ebf3;
  --brand:#22376f;
  --brand-2:#3b5fa8;
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  background:var(--bg);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
  min-height:100vh; display:flex; flex-direction:column;
}
a { text-decoration:none; color:inherit; }
img { max-width:100%; display:block; }
a:focus-visible, .btn:focus-visible { outline:2px solid var(--ink); outline-offset:2px; }

.btn { display:inline-flex; align-items:center; justify-content:center; gap:6px; border-radius:999px; font-weight:600; cursor:pointer; transition:all .2s; border:none; }
.btn-primary { background:linear-gradient(180deg,#1c2941,#0d1526); color:#fff; font-size:15px; padding:14px 30px; box-shadow:0 1px 2px rgba(13,21,38,.28), 0 10px 24px -16px rgba(13,21,38,.55); }
.btn-primary:hover { background:linear-gradient(180deg,#2a3b5e,#16223c); box-shadow:0 2px 4px rgba(13,21,38,.24), 0 16px 34px -16px rgba(13,21,38,.6); transform:translateY(-1px); }
.btn-ghost { background:#fff; color:var(--ink); font-size:15px; padding:14px 30px; border:1px solid #dbe1ec; }
.btn-ghost:hover { background:var(--bg-soft); border-color:#c3cddf; transform:translateY(-1px); }
.btn-sm { padding:9px 20px; font-size:14px; }

/* ===== 导航 ===== */
.nav { position:sticky; top:0; z-index:100; backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); background:rgba(255,255,255,.82); border-bottom:1px solid var(--line); }
.nav-inner { max-width:1100px; margin:0 auto; padding:0 24px; height:64px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.logo { display:flex; align-items:center; gap:10px; font-size:17px; font-weight:700; letter-spacing:-.01em; white-space:nowrap; }
.logo-mark { width:28px; height:28px; display:block; border-radius:8px; box-shadow:0 2px 8px -2px rgba(23,38,82,.4); flex:none; }
.logo-mark svg { width:100%; height:100%; display:block; }
.logo-mark-sm { width:22px; height:22px; border-radius:7px; }
.logo-sub { color:var(--ink-3); font-weight:500; font-size:13px; margin-left:2px; }
.nav-links { display:flex; gap:28px; font-size:14px; color:var(--ink-2); }
.nav-links a:hover { color:var(--ink); }

/* ===== Hero ===== */
.hero { position:relative; overflow:hidden; padding:96px 24px 84px; text-align:center; min-height:88vh; min-height:88svh; display:flex; align-items:center; justify-content:center; }
/* 首屏柔光背景(品牌海军蓝单色系, 低饱和); 往下滑进工具区即纯白 */
.hero-glow { position:absolute; inset:0; pointer-events:none; }
.glow { position:absolute; border-radius:50%; filter:blur(90px); will-change:transform; }
.glow-a { width:min(560px,82vw); height:min(560px,82vw); left:-6%; top:-16%; background:radial-gradient(circle at 35% 35%, rgba(58,96,168,.40), rgba(58,96,168,0) 70%); animation:glow-a 26s ease-in-out infinite alternate; }
.glow-b { width:min(620px,92vw); height:min(620px,92vw); right:-12%; top:-22%; background:radial-gradient(circle at 60% 40%, rgba(130,170,235,.46), rgba(130,170,235,0) 70%); animation:glow-b 32s ease-in-out infinite alternate; }
.glow-c { width:min(480px,72vw); height:min(480px,72vw); left:32%; top:24%; background:radial-gradient(circle at 50% 50%, rgba(96,140,210,.30), rgba(96,140,210,0) 72%); animation:glow-c 24s ease-in-out infinite alternate; }
@keyframes glow-a { from { transform:translate(0,0) scale(1); } to { transform:translate(70px,50px) scale(1.15); } }
@keyframes glow-b { from { transform:translate(0,0) scale(1.08); } to { transform:translate(-80px,60px) scale(.95); } }
@keyframes glow-c { from { transform:translate(0,0) scale(.95); } to { transform:translate(-50px,-40px) scale(1.12); } }
/* 底部渐隐到白色, 与下方内容无缝衔接 */
.hero::after { content:""; position:absolute; left:0; right:0; bottom:0; height:24%; background:linear-gradient(180deg, rgba(255,255,255,0), #fff); pointer-events:none; }
@media (prefers-reduced-motion: reduce) { .glow { animation:none; } }
.hero-inner { position:relative; z-index:1; max-width:820px; margin:0 auto; display:flex; flex-direction:column; align-items:center; }
.hero-mark { width:76px; height:76px; border-radius:20px; margin-bottom:30px; box-shadow:0 16px 40px -16px rgba(23,38,82,.5); }
.hero-mark svg { width:100%; height:100%; display:block; }
h1 { font-size:clamp(42px,7.2vw,76px); line-height:1.08; letter-spacing:-.03em; font-weight:800; margin-bottom:20px; color:var(--ink); }
@supports ((-webkit-background-clip:text) or (background-clip:text)) {
  h1 {
    background:linear-gradient(96deg,#0b1424 0%,#152547 45%,#22406f 78%,#2c4f86 100%);
    -webkit-background-clip:text; background-clip:text;
    -webkit-text-fill-color:transparent;
  }
}
.hero-sub { color:var(--ink-2); font-size:clamp(18px,2.4vw,23px); line-height:1.5; font-weight:500; letter-spacing:-.01em; margin-bottom:14px; }
.hero-desc { color:var(--ink-3); font-size:15.5px; line-height:1.7; max-width:560px; margin:0 auto 34px; }
.nw { white-space:nowrap; } /* 保词组不被断行拆开(如"好用的 AI 智能工具"整块换行) */
.hero-cta { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
.hero-note { margin-top:38px; color:var(--ink-3); font-size:13px; }

/* ===== 工具目录 ===== */
.tools { background:var(--bg-soft); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.tools-inner { max-width:1100px; margin:0 auto; padding:64px 24px 72px; }
.sec-head { margin-bottom:28px; }
.sec-head h2 { font-size:26px; letter-spacing:-.01em; margin-bottom:8px; }
.sec-sub { color:var(--ink-3); font-size:14px; }

.tool-card { border-radius:24px; }
.tool-card.live {
  display:flex; gap:36px; align-items:center; justify-content:space-between;
  background:#fff; border:1px solid var(--line);
  padding:34px 36px; margin-bottom:22px;
  box-shadow:0 1px 2px rgba(15,26,52,.04), 0 14px 34px -26px rgba(15,26,52,.16);
  transition:box-shadow .25s, transform .25s, border-color .25s;
}
.tool-card.live:hover { border-color:#cfd9ea; box-shadow:0 2px 6px rgba(15,26,52,.06), 0 26px 56px -28px rgba(15,26,52,.32); transform:translateY(-3px); }
.tc-main { flex:1; min-width:0; max-width:560px; }
.tc-top { display:flex; align-items:center; gap:14px; margin-bottom:16px; }
.tc-icon { width:52px; height:52px; border-radius:15px; background:linear-gradient(135deg,#22376f,#0f1a3c); color:#fff; display:flex; align-items:center; justify-content:center; font-size:23px; font-weight:800; box-shadow:0 10px 24px -10px rgba(23,38,82,.65); flex:none; }
.tc-name { font-size:21px; font-weight:700; letter-spacing:-.01em; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.tc-badge { display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:600; color:#1a7f37; background:#e9f6ee; border:1px solid #cdecd9; border-radius:999px; padding:3px 11px; }
.tc-dot { width:6px; height:6px; border-radius:50%; background:#1a7f37; }
.tc-slogan { color:var(--ink-3); font-size:13.5px; margin-top:5px; }
.tc-desc { color:var(--ink-2); font-size:14.5px; line-height:1.75; margin-bottom:16px; }
.tc-tags { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:24px; }
.tc-tags span { font-size:12.5px; color:var(--ink-2); background:var(--bg-soft); border:1px solid var(--line); border-radius:999px; padding:5px 12px; }
.tc-cta { display:flex; align-items:center; gap:20px; }
.tc-more { color:var(--ink-2); font-size:14px; font-weight:600; }
.tc-more:hover { color:var(--ink); }
.tc-shot { width:216px; flex:none; }
.tc-shot img { border-radius:14px; border:1px solid var(--line); box-shadow:0 26px 60px -30px rgba(11,20,40,.45); }

.tool-card.soon {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  background:linear-gradient(180deg,#fbfcfe,#f4f7fc); border:1.5px dashed #ccd7e8; padding:40px 24px; text-align:center;
  transition:border-color .25s, background .25s;
}
.tool-card.soon:hover { border-color:#a9bcd8; }
.soon-plus { width:46px; height:46px; border-radius:50%; border:1.5px dashed #b8c7de; display:flex; align-items:center; justify-content:center; font-size:22px; color:#7b8bab; margin-bottom:14px; }
.soon-t { font-size:16.5px; font-weight:700; color:var(--ink-2); margin-bottom:7px; }
.soon-d { color:var(--ink-3); font-size:13.5px; }

/* ===== 关于 ===== */
.about-inner { max-width:1100px; margin:0 auto; padding:72px 24px 84px; }
.about-p { color:var(--ink-2); font-size:15px; line-height:1.9; max-width:720px; }

/* ===== 页脚(深海军蓝渐变 + 顶部发丝高光线, 不用纯黑) ===== */
.footer { margin-top:auto; position:relative; overflow:hidden; background:linear-gradient(180deg,#16233f 0%,#0d1729 55%,#0a1120 100%); padding:60px 24px 52px; text-align:center; }
.footer::before { content:""; position:absolute; left:50%; top:-130px; width:min(680px,112vw); height:280px; transform:translateX(-50%); background:radial-gradient(ellipse at center, rgba(96,135,205,.20), rgba(96,135,205,0) 70%); pointer-events:none; }
.footer::after { content:""; position:absolute; left:0; right:0; top:0; height:1px; background:linear-gradient(90deg, rgba(255,255,255,0), rgba(150,178,225,.30), rgba(255,255,255,0)); }
.foot-inner { position:relative; max-width:1100px; margin:0 auto; }
.foot-brand { display:inline-flex; align-items:center; gap:9px; font-size:15px; font-weight:700; color:#eef3fd; margin-bottom:10px; }
.footer .logo-mark { box-shadow:0 0 0 1px rgba(255,255,255,.12), 0 4px 14px -6px rgba(0,0,0,.6); }
.foot-line { color:#93a5c6; font-size:13px; margin-bottom:12px; letter-spacing:.02em; }
.foot-note { color:#7185a8; font-size:12px; line-height:1.7; max-width:560px; margin:0 auto; }

/* ===== 移动端 ===== */
@media (max-width: 760px) {
  .nav-links { display:none; }
  .hero { padding:64px 20px 56px; }
  .hero-mark { width:64px; height:64px; border-radius:17px; margin-bottom:24px; }
  .tools-inner { padding:44px 20px 52px; }
  .about-inner { padding:52px 20px 56px; }
  .tool-card.live { flex-direction:column; padding:26px 22px; gap:22px; align-items:stretch; }
  .tc-shot { width:100%; max-width:250px; margin:0 auto; }
  .tc-cta { justify-content:flex-start; }
  .logo-sub { display:none; }
}
