/* ==============================================================
   tidy.css — 首页 1:1 视觉复刻层（2026-11-10，本地分支 feat/site-redesign）
   参考同类工具站的真实结构：sticky 毛玻璃导航 / 居中 hero / 解析大卡 /
   核心优势 / 四步 / FAQ / 深色页脚；含 8 组 CSS 动效。
   全部使用 td- 前缀，互不污染全站其它页面；删除本文件 + index.html 两行引用即回滚。
   ============================================================== */
:root {
    --td-primary:#4f7cff; --td-primary-2:#6f8cff; --td-accent:#8b5cf6;
    --td-success:#10b981; --td-success-2:#34d399;
    --td-text:#0f172a; --td-text-2:#334155; --td-muted:#64748b;
    --td-line:#e5e9f2; --td-bg:#f4f7ff; --td-card:#fff;
    --td-radius-lg:24px; --td-radius:16px; --td-radius-sm:12px;
    --td-shadow-card:0 24px 70px -34px rgba(24,50,120,.45), 0 0 0 1px rgba(229,233,242,.9);
    --td-shadow-soft:0 10px 30px -18px rgba(24,50,120,.35);
    --td-ease:cubic-bezier(.22,1,.36,1);
}
@keyframes tdFadeUp { from{opacity:0;transform:translateY(14px)} to{opacity:1;transform:translateY(0)} }
@keyframes tdCardIn { from{opacity:0;transform:translateY(26px) scale(.985)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes tdPop { from{opacity:0;transform:scale(.94) translateY(10px)} to{opacity:1;transform:scale(1) translateY(0)} }
@keyframes tdSpin { to{transform:rotate(360deg)} }
@keyframes tdStripes { to{background-position:18px 0} }
@keyframes tdPulse { 0%{box-shadow:0 0 0 0 rgba(16,185,129,.55)} 70%{box-shadow:0 0 0 8px rgba(16,185,129,0)} 100%{box-shadow:0 0 0 0 rgba(16,185,129,0)} }

/* ---------- 顶部导航：sticky + 毛玻璃 ---------- */
body.home .site-header {
    position:sticky; top:0; z-index:120; height:64px;
    background:rgba(255,255,255,.82);
    -webkit-backdrop-filter:saturate(180%) blur(16px);
    backdrop-filter:saturate(180%) blur(16px);
    border-bottom:1px solid var(--td-line);
    box-shadow:0 10px 30px -22px rgba(24,50,120,.45);
}
body.home .site-header > .wrap {
    max-width:1140px; height:64px; padding:0 20px;
    display:flex; align-items:center; gap:12px;
}
body.home .site-header .brand { flex:0 0 auto; }
body.home .site-header .brand .name { font-size:17px; font-weight:800; color:var(--td-text); }
body.home .site-header .brand em { font-size:12px; }
body.home .site-header .nav { margin-left:auto; display:flex; align-items:center; gap:4px; }
body.home .site-header .nav a {
    margin:0; padding:8px 13px; border-radius:10px;
    font-size:14px; font-weight:500; color:var(--td-text-2);
    transition:background .2s ease,color .2s ease;
}
body.home .site-header .nav a:hover { background:rgba(79,124,255,.10); color:var(--td-primary); }
body.home .site-header .lang-btn { font-size:13px; color:var(--td-muted); }
body.home .site-header .hd-right { gap:10px; }
body.home .site-header .quota-pill {
    background:rgba(79,124,255,.10); color:#3b5bdb; border:1px solid rgba(79,124,255,.18);
    padding:7px 14px; font-size:13px;
}
body.home .site-header .quota-pill i { background:var(--td-success); }
body.home .site-header .nav-acct {
    background:linear-gradient(135deg,var(--td-primary),var(--td-accent));
    border:0; border-radius:999px; padding:9px 20px; font-size:14px; font-weight:600;
    box-shadow:0 10px 22px -14px rgba(79,124,255,1);
    transition:transform .2s var(--td-ease),box-shadow .2s ease,filter .2s ease;
}
body.home .site-header .nav-acct:hover { transform:translateY(-2px); filter:brightness(1.06); box-shadow:0 14px 26px -12px rgba(79,124,255,.9); }
.td-nav-toggle { display:none; }

/* ---------- 页面容器 / 背景光晕 ---------- */
body.home { background:var(--td-bg); }
body.home .td-main {
    position:relative; flex:1; width:100%; max-width:1140px;
    margin:0 auto; padding:0 20px 70px;
}
body.home .td-main::before {
    content:""; position:absolute; left:50%; top:-64px; transform:translateX(-50%);
    width:min(1100px,100vw); height:520px; pointer-events:none; z-index:-1;
    background:radial-gradient(ellipse at 50% 0%,rgba(139,92,246,.16),rgba(79,124,255,.10) 45%,transparent 72%);
}
body.home .notice-bar { max-width:1140px; margin:0 auto; }

/* ---------- Hero ---------- */
.td-hero { text-align:center; padding:54px 0 26px; }
.td-badge {
    display:inline-flex; align-items:center; gap:8px; height:32px; padding:0 14px;
    border-radius:999px; font-size:13px; font-weight:600; color:#3b5bdb;
    background:rgba(79,124,255,.10); border:1px solid rgba(79,124,255,.18);
    animation:tdFadeUp .6s var(--td-ease) both;
}
.td-dot { width:7px; height:7px; border-radius:50%; background:var(--td-success); animation:tdPulse 2s infinite; }
.td-h1 {
    margin:18px 0 10px; font-size:clamp(26px,4.4vw,44px); line-height:1.25;
    font-weight:800; letter-spacing:-1px; color:var(--td-text);
    animation:tdFadeUp .7s .05s var(--td-ease) both;
}
.td-grad { background:linear-gradient(120deg,var(--td-primary) 10%,var(--td-accent) 90%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.td-lead {
    margin:0 auto; max-width:620px; font-size:clamp(13px,2.6vw,16px);
    line-height:1.85; color:var(--td-muted);
    animation:tdFadeUp .7s .12s var(--td-ease) both;
}

/* ---------- 解析卡 ---------- */
.td-parse-card {
    margin:30px 0 0; background:var(--td-card); border-radius:var(--td-radius-lg);
    padding:26px; box-shadow:var(--td-shadow-card);
    animation:tdCardIn .75s .16s var(--td-ease) both;
}
.td-input-row { display:flex; gap:10px; align-items:stretch; }
.td-input-wrap { position:relative; flex:1; min-width:0; display:flex; align-items:center; }
.td-input-icon { position:absolute; left:15px; color:#a3aec4; pointer-events:none; }
#input-url {
    display:block; box-sizing:border-box; width:100%; height:52px; min-height:52px;
    padding:14px 76px 14px 44px; border:1px solid var(--td-line); border-radius:var(--td-radius);
    background:#f8fafd; color:var(--td-text); font:inherit; font-size:15px; line-height:1.5;
    outline:none; resize:none;
    transition:border-color .22s ease,box-shadow .22s ease,background .22s ease;
}
#input-url:focus { border-color:var(--td-primary); background:#fff; box-shadow:0 0 0 3px rgba(79,124,255,.12); }
#input-url::placeholder { color:#a3aec4; }
.td-paste-btn {
    position:absolute; right:10px; top:50%; transform:translateY(-50%);
    height:30px; padding:0 11px; border:1px solid var(--td-line); border-radius:999px;
    background:#fff; color:var(--td-muted); font-size:12px; cursor:pointer;
    transition:color .2s ease,border-color .2s ease,background .2s ease;
}
.td-paste-btn:hover { color:var(--td-primary); border-color:var(--td-primary); background:rgba(79,124,255,.06); }
.td-clear-btn {
    flex:0 0 auto; height:52px; padding:0 20px;
    border:1px solid var(--td-line); border-radius:var(--td-radius);
    background:#fff; color:var(--td-text-2); font-size:14px; font-weight:600; cursor:pointer;
    transition:background .2s ease,color .2s ease,transform .15s var(--td-ease);
}
.td-clear-btn:hover { background:#f1f5f9; transform:translateY(-1px); }
.td-btn-row { display:flex; gap:12px; margin-top:16px; }
.td-btn {
    flex:1; display:inline-flex; align-items:center; justify-content:center; gap:7px;
    height:50px; padding:0 22px; border:0; border-radius:var(--td-radius);
    font-size:15px; font-weight:700; letter-spacing:.2px; color:#fff; cursor:pointer;
    transition:transform .18s var(--td-ease),box-shadow .2s ease,filter .2s ease;
}
.td-btn-ic { font-size:15px; line-height:1; }
.td-btn-primary { background:linear-gradient(135deg,var(--td-primary),var(--td-primary-2)); box-shadow:0 12px 26px -14px rgba(79,124,255,1); }
.td-btn-success { background:linear-gradient(135deg,var(--td-success),var(--td-success-2)); box-shadow:0 12px 26px -14px rgba(16,185,129,1); }
.td-btn:hover { transform:translateY(-2px); filter:brightness(1.06); box-shadow:0 18px 32px -14px rgba(24,50,120,.55); }
.td-btn:active { transform:translateY(0); }
.td-btn.is-loading .td-btn-ic { display:inline-block; animation:tdSpin .75s linear infinite; }
.td-platforms {
    display:flex; flex-wrap:wrap; align-items:center; gap:8px;
    margin-top:18px; padding-top:16px; border-top:1px dashed var(--td-line);
}
.td-label { font-size:13px; color:var(--td-muted); margin-right:2px; }
.td-chip {
    display:inline-flex; align-items:center; height:30px; padding:0 12px;
    border:1px solid var(--td-line); border-radius:999px; background:#fafbff;
    color:var(--td-text-2); font-size:13px; text-decoration:none;
    transition:transform .2s var(--td-ease),background .2s ease,color .2s ease,border-color .2s ease;
}
.td-chip:hover { transform:translateY(-2px); background:rgba(79,124,255,.10); color:#3b5bdb; border-color:rgba(79,124,255,.28); text-decoration:none; }
.td-status-line {
    display:flex; align-items:center; justify-content:center; gap:10px;
    margin-top:20px; min-height:0; font-size:14.5px; color:var(--td-muted);
}
.td-status-line:not(:empty) { animation:tdFadeUp .35s var(--td-ease) both; }
.td-recog { display:flex; justify-content:center; margin-top:8px; }
.td-recog .recog-hint { font-size:12.5px; color:#a3aec4; }
.td-recog .recog-pill { background:rgba(16,185,129,.10); color:#047857; }
.td-progress { display:none; position:relative; width:100%; height:10px; margin-top:16px; border-radius:999px; background:#eaf0fb; overflow:hidden; }
.td-progress.is-on { display:block; animation:tdFadeUp .35s var(--td-ease) both; }
.td-progress-bar {
    position:relative; height:100%; width:0%; border-radius:999px;
    background:linear-gradient(90deg,var(--td-primary),var(--td-accent));
    transition:width .25s ease; overflow:hidden;
}
.td-progress-bar::after {
    content:""; position:absolute; inset:0;
    background-image:linear-gradient(45deg,rgba(255,255,255,.28) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.28) 50%,rgba(255,255,255,.28) 75%,transparent 75%,transparent);
    background-size:18px 18px; animation:tdStripes .9s linear infinite;
}
.td-progress-meta { display:none; justify-content:space-between; margin-top:7px; font-size:12.5px; color:var(--td-muted); }
.td-progress-meta.is-on { display:flex; }

/* ---------- 结果区（沿用原组件，收进同一容器） ---------- */
body.home .result.td-result { padding:26px 0 10px; }
body.home .td-result .wrap { max-width:none; }
body.home .td-result .result-card {
    border-radius:var(--td-radius-lg); box-shadow:var(--td-shadow-card);
    border:1px solid var(--td-line); animation:tdPop .45s var(--td-ease) both;
}

/* ---------- 内容区块统一节奏 ---------- */
.td-section { margin-top:62px; }
.td-js .td-section { opacity:0; }
.td-js .td-section.in-view { animation:tdFadeUp .65s var(--td-ease) both; }
.td-section-head { max-width:780px; margin:0 auto 28px; text-align:center; }
.td-eyebrow {
    display:inline-flex; align-items:center; gap:6px; height:30px; padding:0 14px;
    margin-bottom:15px; border-radius:999px; font-size:12.5px; font-weight:700; letter-spacing:.5px;
    color:#3b5bdb; background:rgba(79,124,255,.10); border:1px solid rgba(79,124,255,.18);
}
.td-section-head h2 {
    margin:0; font-size:clamp(20px,2.6vw,26px); font-weight:800; letter-spacing:-.5px;
    color:var(--td-text); line-height:1.4;
}
.td-section-head p { margin:10px 0 0; font-size:14px; line-height:1.85; color:var(--td-muted); }
.td-content-card { background:var(--td-card); border-radius:var(--td-radius-lg); padding:30px; box-shadow:var(--td-shadow-card); }

/* ---------- 核心优势 ---------- */
.td-feature-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(248px,1fr)); gap:16px; }
.td-feature-item {
    --f:79,124,255; position:relative; padding:22px 20px;
    border:1.5px solid var(--td-line); border-radius:var(--td-radius);
    background:linear-gradient(180deg,#fff,#fafbff); overflow:hidden;
    transition:transform .28s var(--td-ease),box-shadow .28s ease,border-color .24s ease;
}
.td-feature-item:hover { transform:translateY(-4px); box-shadow:var(--td-shadow-soft); border-color:rgba(79,124,255,.35); }
.td-feature-icon {
    position:relative; z-index:1; width:44px; height:44px; margin-bottom:15px; border-radius:13px;
    display:grid; place-items:center; color:rgb(var(--f)); background:rgba(var(--f),.10);
    border:1px solid rgba(var(--f),.20);
    transition:color .28s ease,background .28s ease,border-color .28s ease,transform .28s var(--td-ease);
}
.td-feature-item:hover .td-feature-icon { color:#fff; background:rgb(var(--f)); border-color:rgb(var(--f)); transform:scale(1.06); }
.td-feature-item h3 { position:relative; z-index:1; margin:0 0 7px; font-size:15.5px; font-weight:700; color:var(--td-text); }
.td-feature-item p { position:relative; z-index:1; margin:0; font-size:13px; line-height:1.8; color:var(--td-muted); }

/* ---------- 四步 ---------- */
.td-steps { list-style:none; counter-reset:tdstep; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(234px,1fr)); gap:16px; }
.td-step {
    position:relative; padding:22px 20px 22px 70px; border:1.5px solid var(--td-line);
    border-radius:var(--td-radius); background:linear-gradient(180deg,#fff,#fafbff);
    counter-increment:tdstep;
    transition:transform .28s var(--td-ease),box-shadow .28s ease,border-color .24s ease;
}
.td-step::before {
    content:counter(tdstep); position:absolute; left:20px; top:22px;
    width:34px; height:34px; border-radius:50%; display:grid; place-items:center;
    color:#fff; font-size:14px; font-weight:800;
    background:linear-gradient(135deg,var(--td-primary),var(--td-accent));
    box-shadow:0 8px 18px -10px rgba(79,124,255,1);
}
.td-step:hover { transform:translateY(-4px); box-shadow:var(--td-shadow-soft); border-color:rgba(79,124,255,.35); }
.td-step h3 { margin:0 0 7px; font-size:15px; font-weight:700; color:var(--td-text); }
.td-step p { margin:0; font-size:13px; line-height:1.8; color:var(--td-muted); }

/* ---------- FAQ ---------- */
.td-faq-list { display:flex; flex-direction:column; gap:12px; }
.td-faq-item {
    border:1.5px solid var(--td-line); border-radius:var(--td-radius); background:#fff; overflow:hidden;
    transition:border-color .24s ease,box-shadow .28s ease,background .24s ease;
}
.td-faq-item:hover { border-color:rgba(79,124,255,.4); }
.td-faq-item[open] { border-color:rgba(79,124,255,.45); box-shadow:var(--td-shadow-soft); background:#fcfdff; }
.td-faq-item summary {
    list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:14px;
    padding:16px 20px; font-size:15px; font-weight:700; color:var(--td-text);
}
.td-faq-item summary::-webkit-details-marker { display:none; }
.td-faq-plus { position:relative; flex:0 0 auto; width:16px; height:16px; }
.td-faq-plus::before,.td-faq-plus::after {
    content:""; position:absolute; left:50%; top:50%; background:var(--td-primary); border-radius:2px;
    transform:translate(-50%,-50%); transition:transform .25s var(--td-ease);
}
.td-faq-plus::before { width:14px; height:2px; }
.td-faq-plus::after { width:2px; height:14px; }
.td-faq-item[open] .td-faq-plus::after { transform:translate(-50%,-50%) rotate(90deg); opacity:0; }
.td-faq-answer { padding:0 20px 18px; font-size:14px; line-height:1.85; color:var(--td-text-2); animation:tdFadeUp .3s var(--td-ease) both; }
.td-seo-note {
    position:relative; margin-top:22px; padding:20px 22px 20px 26px; font-size:13.5px; line-height:1.9;
    color:var(--td-muted); background:linear-gradient(135deg,rgba(79,124,255,.07),rgba(139,92,246,.07));
    border:1px solid rgba(79,124,255,.15); border-radius:var(--td-radius); overflow:hidden;
}
.td-seo-note::before { content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(180deg,var(--td-primary),var(--td-accent)); }
.td-seo-note b { color:var(--td-text-2); }

/* ---------- 折叠区：原有全站索引 / 功能 DOM 全保留 ---------- */
.td-more { margin-top:40px; border:1px solid var(--td-line); border-radius:var(--td-radius); background:rgba(255,255,255,.6); }
.td-more > summary {
    list-style:none; cursor:pointer; padding:14px 20px; font-size:13px; color:var(--td-muted);
    transition:color .2s ease,background .2s ease;
}
.td-more > summary::-webkit-details-marker { display:none; }
.td-more > summary:hover { color:var(--td-primary); background:rgba(79,124,255,.05); }
.td-more[open] > summary { border-bottom:1px solid var(--td-line); color:var(--td-text-2); }
.td-more-body { padding:8px 20px 24px; }
.td-more-body section { padding:20px 0 !important; }
.td-more-links { font-size:13px; color:var(--td-muted); }
.td-more-links a { color:var(--td-primary); }

/* ---------- 深色页脚 ---------- */
body.home .site-footer.td-footer {
    position:relative; margin-top:auto; padding:0; border-top:0;
    color:#94a3b8; font-size:13px;
    background:linear-gradient(180deg,#0f172a 0%,#0b1220 100%); overflow:hidden;
}
body.home .td-footer::before {
    content:""; position:absolute; right:-80px; top:-120px; width:420px; height:420px; border-radius:50%;
    background:radial-gradient(circle,rgba(79,124,255,.16),transparent 70%); pointer-events:none;
}
body.home .td-footer .wrap.td-footer-inner { position:relative; z-index:1; max-width:1140px; margin:0 auto; padding:38px 20px 24px; }
body.home .td-footer .footer-cols.td-footer-top {
    display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px;
    padding-bottom:22px; border-bottom:1px solid rgba(148,163,184,.16); grid-template-columns:none;
}
.td-footer-brand { display:flex; align-items:center; gap:12px; }
.td-logo { display:inline-flex; line-height:0; }
.td-footer-brand div { display:grid; gap:3px; }
.td-footer-brand b { font-size:15px; color:#e2e8f0; }
.td-footer-brand span { font-size:12.5px; color:#7f8ea8; }
.td-footer-links { display:flex; flex-wrap:wrap; gap:8px; }
.td-footer-links a { padding:6px 12px; border-radius:999px; background:rgba(255,255,255,.06); color:#94a3b8; font-size:12.5px; text-decoration:none; transition:background .2s ease,color .2s ease; }
.td-footer-links a:hover { background:rgba(79,124,255,.25); color:#fff; text-decoration:none; }
body.home .td-footer .td-friendlinks { display:flex; align-items:center; gap:10px; padding:18px 0 0; font-size:12.5px; }
body.home .td-footer .td-friendlinks.hidden { display:none; }
body.home .td-footer .td-friendlinks a { color:#94a3b8; }
body.home .td-footer .td-footer-bottom {
    display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 24px;
    padding-top:20px; font-size:12.5px; line-height:1.9; color:#7f8ea8;
}

/* ---------- 手机端：汉堡菜单 + 单列 ---------- */
@media (max-width:860px) {
    body.home .site-header .nav {
        display:none; position:absolute; left:12px; right:12px; top:64px;
        flex-direction:column; align-items:stretch; gap:2px; margin:0; padding:10px;
        background:rgba(255,255,255,.98); border:1px solid var(--td-line); border-radius:var(--td-radius);
        box-shadow:var(--td-shadow-card); backdrop-filter:blur(16px);
        animation:tdPop .25s var(--td-ease) both;
    }
    body.home .site-header.td-nav-open .nav { display:flex; }
    body.home .site-header .nav a { padding:11px 14px; }
    body.home .site-header .lang-btn { display:none; }
    .td-nav-toggle {
        display:grid; place-items:center; flex:0 0 auto; width:38px; height:38px; margin-left:auto;
        border:1px solid var(--td-line); border-radius:10px; background:#fff; color:var(--td-text);
        font-size:17px; cursor:pointer;
    }
    body.home .site-header .hd-right { margin-left:0; }
}
@media (max-width:640px) {
    .td-hero { padding:36px 0 20px; }
    .td-h1 { font-size:29px; letter-spacing:-.6px; }
    .td-lead { font-size:14px; }
    .td-parse-card { padding:18px; margin-top:22px; border-radius:20px; }
    /* 参考站手机端：输入框整行，清空是下面一整行按钮 */
    .td-input-row { gap:8px; flex-direction:column; }
    .td-input-wrap { width:100%; }
    .td-clear-btn { width:100%; height:42px; font-size:14px; }
    .td-btn-row { gap:8px; }
    .td-btn { height:46px; padding:0 10px; font-size:14px; }
    .td-content-card { padding:20px; border-radius:20px; }
    .td-section { margin-top:44px; }
    .td-section-head { margin-bottom:20px; }
    /* 参考站手机端：特性与步骤都是单列大卡；两列会把步骤文字挤成每行 4~5 字 */
    .td-feature-grid,.td-steps { grid-template-columns:1fr; gap:12px; }
    .td-feature-item { padding:18px 16px; }
    .td-step { padding:18px 16px 18px 60px; }
    .td-step::before { left:16px; top:18px; width:30px; height:30px; font-size:13px; }
    .td-platforms { gap:5px; }
    .td-chip { height:29px; padding:0 9px; font-size:11.5px; }
    body.home .site-header .quota-pill { display:none; }
    body.home .td-footer .td-footer-top { flex-direction:column; align-items:flex-start; }
}
@media (max-width:380px) {
    .td-h1 { font-size:26px; }
    .td-feature-grid,.td-steps { grid-template-columns:1fr; }
    .td-btn { font-size:13px; }
}
@media (prefers-reduced-motion:reduce) {
    .td-badge,.td-h1,.td-lead,.td-parse-card,.td-status-line,.td-faq-answer,.td-js .td-section.in-view,
    body.home .td-result .result-card,.td-nav .nav { animation:none !important; }
    .td-dot,.td-progress-bar::after,.td-btn.is-loading .td-btn-ic { animation:none !important; }
    .td-btn,.td-chip,.td-feature-item,.td-step,.td-feature-icon { transition:none !important; }
    .td-js .td-section { opacity:1 !important; }
}


/* ---------- tidy.css 补丁 2（1:1 复刻微调） ---------- */
/* 区块改为 CSS 错峰入场：整页可见、无 JS 也不会空白，与参考站首屏动画一致 */
.td-js .td-section { opacity:1 !important; }
.td-section { animation:tdFadeUp .65s var(--td-ease) both; }
#td-feature { animation-delay:.05s; }
#td-steps { animation-delay:.12s; }
#td-faq { animation-delay:.19s; }
.td-js .td-section.in-view { animation:tdFadeUp .65s var(--td-ease) both; }
/* 手机端：标题两行整齐、渐变词不拆字 */
@media (max-width:640px) {
    .td-h1 { display:flex; flex-direction:column; align-items:center; gap:0; font-size:28px; }
    .td-grad { white-space:nowrap; }
    /* 桌面 44px 规格在 .td-hero .td-grad(0,2,0)!important 上，窄屏必须用更高特异性压回，
       否则 H1 渐变词换长文案（9 字 ≈ 396px）后必溢出 */
    .td-hero .td-h1 .td-grad { font-size:28px !important; letter-spacing:-.4px !important; }
    #input-url { font-size:14px; padding-left:40px; padding-right:70px; }
    .td-platforms .td-chip:nth-of-type(n+8) { display:none; }
    .td-platforms.td-chips-open .td-chip:nth-of-type(n+8) { display:inline-flex; }
    .td-chip-more { display:inline-flex !important; }
    .td-platforms.td-chips-open .td-chip-more { display:none !important; }
    /* 导航顺序：logo 左 / 登录胶囊 / 汉堡最右 */
    body.home .site-header .brand { order:1; }
    body.home .site-header .hd-right { order:2; margin-left:auto; }
    .td-nav-toggle { order:3; margin-left:0; }
}
@media (max-width:860px) {
    body.home .site-header .brand { order:1; }
    body.home .site-header .hd-right { order:2; margin-left:auto; }
    .td-nav-toggle { order:3; margin-left:0; }
}
@media (min-width:641px) { .td-chip-more { display:none !important; } }


/* ---------- tidy.css 补丁 3：手机标签收 7+更多、输入框单行 ---------- */
@media (max-width:640px) {
    .td-platforms .td-chip:nth-of-type(n+8) { display:none; }
    .td-platforms.td-chips-open .td-chip:nth-of-type(n+8) { display:inline-flex; }
    .td-platforms .td-chip-more { display:inline-flex !important; }
    .td-platforms.td-chips-open .td-chip-more { display:none !important; }
}


/* ---------- tidy.css 补丁 4：折叠区内的全站索引 ---------- */
.td-legacy-links { margin:18px 0; padding:16px; border:1px solid var(--td-line); border-radius:var(--td-radius); background:#fff; }
.td-legacy-links h3 { margin:0 0 12px; font-size:14px; color:var(--td-text-2); }
.td-legacy-grid { display:flex; flex-wrap:wrap; gap:8px; }
.td-legacy-grid a { padding:4px 9px; border:1px solid var(--td-line); border-radius:999px; font-size:12.5px; color:var(--td-muted); text-decoration:none; }
.td-legacy-grid a:hover { color:var(--td-primary); border-color:var(--td-primary); text-decoration:none; }


/* ==============================================================
   tidy.css 补丁 5 —— 按参考站 getComputedStyle 实测值逐项对齐（1440 视口）
   参考值：body 16px/1.6、H1 44px/-1px/55px、按钮 radius 16px、input 56px、
   登录胶囊浅蓝描边、桌面平台标签单行、背景三处 radial 光晕
   ============================================================== */
body.home {
    font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif !important;
    font-size:16px !important; line-height:1.6 !important; color:#0f172a !important;
    background-color:#f4f7ff !important; background-image:none !important;
}
/* 参考站的背景来自 body::before 的固定三层光晕 */
body.home::before {
    content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
    background-image:
        radial-gradient(680px 460px at 8% -8%, rgba(79,124,255,.20), rgba(0,0,0,0) 70%),
        radial-gradient(620px 420px at 92% -4%, rgba(139,92,246,.18), rgba(0,0,0,0) 70%),
        radial-gradient(900px 560px at 50% 108%, rgba(16,185,129,.10), rgba(0,0,0,0) 70%);
}
.td-main::before { display:none !important; }

/* 导航：64px / 14px 菜单 / 浅蓝描边登录胶囊 */
body.home .site-header,
body.home .site-header > .wrap {
    height:64px !important; min-height:64px !important; max-height:64px !important;
    padding-top:0 !important; padding-bottom:0 !important; box-sizing:border-box !important;
}
body.home .site-header .nav a {
    font-size:14px !important; font-weight:500 !important; color:#334155 !important;
    padding:8px 14px !important; border-radius:10px !important; line-height:22.4px !important;
}
/* 登录胶囊与内页统一：白底 + 深蓝字 + 蓝边（浅蓝描边在渐变头部上看不清，用户实测） */
body.home .site-header .nav-acct {
    height:38px !important; padding:0 16px !important; border-radius:999px !important;
    background:rgba(255,255,255,.92) !important; color:#1F4FFF !important;
    border:1px solid rgba(31,79,255,.42) !important;
    box-shadow:0 4px 14px rgba(31,79,255,.12) !important;
    font-size:14px !important; font-weight:700 !important; letter-spacing:.2px !important;
    display:inline-flex !important; align-items:center !important;
}
body.home .site-header .nav-acct:hover {
    transform:translateY(-1px) !important; filter:none !important; background:#fff !important;
    box-shadow:0 8px 20px rgba(31,79,255,.2) !important;
}
@media (min-width:861px) {
    body.home .site-header .lang-btn,
    body.home .site-header .quota-pill,
    body.home .site-header .nav a:nth-of-type(5) { display:none !important; }
}
.td-lang-proxy { border:0; background:none; color:#4f7cff; font-size:13px; cursor:pointer; padding:0; }

/* Hero：44px / -1px / 55px */
.td-hero { padding:54px 0 26px !important; }
.td-h1 {
    font-size:44px !important; letter-spacing:-1px !important; line-height:1.25 !important;
    font-weight:800 !important; margin:18px 0 10px !important; color:#0f172a !important;
}
.td-hero .td-grad { font-size:44px !important; letter-spacing:-1px !important; line-height:1.25 !important; }
.td-lead { font-size:16px !important; line-height:1.6 !important; max-width:620px !important; }
.td-badge { font-size:13px !important; font-weight:600 !important; }

/* 解析卡 / 输入框 / 清空：56px 高，radius 16px */
.td-parse-card { font-size:16px !important; line-height:1.6 !important; }
#input-url {
    height:56px !important; min-height:56px !important; max-height:56px !important;
    padding:0 16px 0 44px !important; font-size:15px !important; line-height:normal !important;
    border-radius:16px !important; background:#f8fafd !important;
    border:1px solid #e5e9f2 !important; color:#0f172a !important;
    box-shadow:none !important;
}
#input-url:focus { border-color:#4f7cff !important; background:#fff !important; box-shadow:0 0 0 3px rgba(79,124,255,.12) !important; }
#input-url::placeholder { color:#a3aec4 !important; font-size:15px !important; }
.td-input-icon {
    position:absolute !important; left:12px !important; top:50% !important; transform:translateY(-50%) !important;
    width:24px !important; height:24px !important; display:grid !important; place-items:center !important;
    padding:0 !important; border:0 !important; background:transparent !important;
    color:#a3aec4 !important; cursor:pointer !important; z-index:2 !important;
}
.td-input-icon:hover { color:#4f7cff !important; }
.td-input-icon svg { width:18px; height:18px; }
.td-paste-btn { display:none !important; }
.td-clear-btn {
    height:56px !important; border-radius:16px !important;
    background:#f1f5f9 !important; color:#64748b !important;
    border:1px solid rgba(0,0,0,0) !important; padding:0 20px !important;
    font-size:14px !important; font-weight:600 !important; line-height:normal !important;
}
.td-clear-btn:hover { transform:none !important; background:#e8eef7 !important; }

/* 按钮：16px 圆角（用户指出「不够圆滑」的根因） */
.td-btn {
    border-radius:16px !important; height:50px !important;
    font-size:15px !important; font-weight:700 !important; letter-spacing:.2px !important;
    padding:0 22px !important; line-height:normal !important;
}
.td-btn-svg { flex:0 0 auto; }
.td-btn.is-loading .td-btn-svg { animation:tdSpin .75s linear infinite; }
.td-btn-row { gap:12px !important; margin-top:16px !important; }
.td-input-row { gap:10px !important; }

/* 平台标签：单行、12.5px、对方的底色与描边 */
.td-platforms {
    margin-top:18px !important; padding-top:16px !important; gap:8px !important;
    font-size:16px !important; line-height:1.6 !important;
}
.td-label { font-size:13px !important; color:#64748b !important; line-height:20.8px !important; }
.td-chip {
    font-size:12.5px !important; line-height:20px !important; padding:4px 11px !important;
    border-radius:999px !important; background:#f4f7fd !important;
    border:1px solid #e8eef8 !important; color:#56637a !important; font-weight:400 !important;
    height:auto !important;
}
.td-chip:hover { transform:none !important; background:rgba(79,124,255,.10) !important; }
/* 默认收起识别提示行，只有真识别到平台时才显示，避免卡片被撑高 */
.td-recog { display:none !important; margin-top:8px !important; }
.td-recog.is-on { display:flex !important; }
.td-status-line { margin-top:20px !important; font-size:14.5px !important; line-height:1.6 !important; }

/* 桌面：只显示 9 个平台 + 更多…（对方是单行，我们之前铺了两行） */
@media (min-width:641px) {
    .td-platforms .td-chip:nth-of-type(n+10) { display:none !important; }
    .td-platforms.td-chips-open .td-chip:nth-of-type(n+10) { display:inline-flex !important; }
    .td-platforms .td-chip-more { display:inline-flex !important; }
    .td-platforms.td-chips-open .td-chip-more { display:none !important; }
}

/* 手机：保留此前修好的两行标题 / 7+更多 / 短占位文案，只同步圆角与高度 */
@media (max-width:640px) {
    .td-h1 { font-size:28px !important; letter-spacing:-.6px !important; line-height:1.3 !important; }
    .td-grad { font-size:28px !important; letter-spacing:-.6px !important; line-height:1.3 !important; }
    .td-lead { font-size:14px !important; line-height:1.7 !important; }
    #input-url { height:56px !important; min-height:56px !important; max-height:56px !important; padding:0 16px 0 40px !important; font-size:14px !important; }
    #input-url::placeholder { font-size:14px !important; }
    .td-btn { height:46px !important; font-size:14px !important; padding:0 10px !important; border-radius:16px !important; }
    .td-clear-btn { height:56px !important; padding:0 13px !important; font-size:13px !important; }
    .td-platforms .td-chip:nth-of-type(n+8) { display:none !important; }
    .td-platforms.td-chips-open .td-chip:nth-of-type(n+8) { display:inline-flex !important; }
    body.home .site-header .quota-pill { display:none !important; }
}


/* ---------- tidy.css 补丁 6：1px 偏移 / 登录胶囊 / 卡片高度 ---------- */
body.home .td-main { padding-top:1px !important; }
body.home .site-header .nav-acct { line-height:normal !important; gap:normal !important; }
.td-parse-card { padding-bottom:28px !important; }


/* ---------- tidy.css 补丁 7：最后 4 项像素级对齐 ---------- */
.td-badge { padding:0 16.5px !important; }
.td-parse-card { padding-bottom:26px !important; }
.td-status-line { margin-bottom:2px !important; }
/* app.js 会在导航里插入横滑「更多」按钮，桌面隐藏它，菜单宽度与参考站一致 */
@media (min-width:861px) {
    body.home .site-header .nav .nav-more-btn,
    body.home .site-header .nav .nav-more,
    body.home .site-header .nav .nav-swipe-tip { display:none !important; }
    body.home .site-header .nav { gap:4px !important; }
}


/* ---------- tidy.css 补丁 8：导航整体右移 16px，与参考站菜单起点一致 ---------- */
@media (min-width:861px) {
    body.home .site-header .nav { transform:translateX(16px); }
}


/* ---------- tidy.css 补丁 9：品牌图 / 按钮与输入图标对齐参考站实测值 ---------- */
/* 头部品牌图：我们自己的 icon.svg（霓虹手柄），34px 圆角瓷砖 */
body.home .site-header .brand img.logo-mark {
    display:block; width:34px; height:34px; border-radius:9px; object-fit:cover;
    box-shadow:0 4px 14px -6px rgba(24,50,120,.55);
}
/* 页脚品牌图 */
body.home .td-footer img.td-logo { display:block; width:30px; height:30px; border-radius:8px; object-fit:cover; }
/* 按钮图标：17x17 描边（参考站实测） */
.td-btn-svg { width:17px !important; height:17px !important; flex:0 0 auto; }
/* 输入框图标：17px、#64748b（参考站实测） */
.td-input-icon { left:14px !important; color:#64748b !important; }
.td-input-icon svg { width:17px !important; height:17px !important; }


/* ---------- tidy.css 补丁 10：输入框内图标与占位文字对齐 ---------- */
/* 参考站用 <input>，文字天然垂直居中；我们是 textarea（支持多行粘贴），空态时用行高把占位文字居中，
   开始输入后自动恢复正常行高，多行内容不受影响 */
body.home #input-url:placeholder-shown { line-height:54px !important; }
/* 旧装饰图标时代的 pointer-events:none 残留，导致粘贴按钮收不到点击，恢复 */
.td-input-icon { pointer-events:auto !important; }
.td-input-icon:focus { outline:none; }
.td-input-icon:focus-visible { outline:2px solid rgba(79,124,255,.5); outline-offset:2px; border-radius:8px; }


/* ---------- tidy.css 补丁 11：内容区块头与优势卡对齐参考站实测值 ---------- */
/* 区块标题：30px / -0.7px / 1.34（参考站 #advantageTitle 实测） */
.td-section-head h2 { font-size:30px !important; line-height:1.34 !important; letter-spacing:-.7px !important; }
/* 副标题：14.5px / 1.85 / 700px 宽两行 */
.td-section-head p { font-size:14.5px !important; line-height:1.85 !important; max-width:700px; margin:10px auto 0 !important; }
/* 眉标里的图标 */
.td-eyebrow svg { width:13px; height:13px; margin-right:5px; flex:0 0 auto; }
/* 优势卡：1px 边框、无底色（参考站 .feature-item 实测），hover 保留轻反馈 */
.td-feature-item { border-width:1px !important; background:transparent !important; }
.td-feature-item:hover { transform:translateY(-3px); box-shadow:0 10px 30px -18px rgba(24,50,120,.35); border-color:rgba(79,124,255,.35); background:#fff; }
.td-feature-item p { font-size:13.5px !important; line-height:1.78 !important; }
.td-feature-icon svg { width:21px; height:21px; }


/* ---------- tidy.css 补丁 12：优势/步骤网格固定列数（参考站 1080 下仍为 4 列） ---------- */
@media (min-width:861px) {
    .td-feature-grid, .td-steps { grid-template-columns:repeat(4,1fr) !important; }
}
@media (max-width:860px) {
    .td-feature-grid, .td-steps { grid-template-columns:1fr 1fr !important; }
}
/* 手机端（参考站同款）：优势与步骤单列大卡；两列会把步骤正文挤成每行 4~5 字 */
@media (max-width:640px) {
    .td-feature-grid, .td-steps { grid-template-columns:1fr !important; }
}


/* ---------- tidy.css 补丁 13：优势卡悬停动效（参考站实测值逐项对齐） ---------- */
/* 顶部渐变描边：hover 时从左向右展开 */
.td-feature-item::before {
    content:""; position:absolute; inset:0 0 auto 0; height:3px;
    background:linear-gradient(90deg,rgb(var(--f)),rgba(var(--f),.30));
    transform:scaleX(0); transform-origin:left center;
    transition:transform .38s var(--td-ease);
}
/* 右上角柔光圆 */
.td-feature-item::after {
    content:""; position:absolute; top:-48px; right:-48px; width:124px; height:124px;
    border-radius:50%; background:rgba(var(--f),.08); opacity:0; pointer-events:none;
    transition:opacity .38s ease;
}
.td-feature-item:hover { transform:translateY(-4px); border-color:rgba(var(--f),.34); box-shadow:0 22px 40px -26px rgba(15,23,42,.55); }
.td-feature-item:hover::before { transform:scaleX(1); }
.td-feature-item:hover::after { opacity:1; }
.td-feature-item:hover .td-feature-icon {
    color:#fff; background:linear-gradient(135deg,rgb(var(--f)),rgba(var(--f),.70));
    border-color:transparent; transform:translateY(-2px) rotate(-6deg);
    box-shadow:0 14px 24px -14px rgba(var(--f),.95);
}
@media (prefers-reduced-motion:reduce) {
    .td-feature-item::before,.td-feature-item::after { transition:none !important; }
    .td-feature-item:hover { transform:none; }
    .td-feature-item:hover .td-feature-icon { transform:none; }
}


/* ---------- 滚动条样式（对齐参考站实测值） ---------- */
::-webkit-scrollbar { width:10px; height:10px; }
::-webkit-scrollbar-thumb {
    background:#c8d3e6; border-radius:10px; border:2px solid transparent; background-clip:content-box;
}
::-webkit-scrollbar-thumb:hover { background:#a9b8d3; background-clip:content-box; }
html { scroll-behavior:smooth; scrollbar-width:thin; scrollbar-color:#c8d3e6 transparent; }


/* ---------- tidy.css 补丁 14：步骤卡与 FAQ 动效对齐参考站实测值 ---------- */
/* 步骤卡：数字徽标为圆角方块（radius 11），悬停时徽标放大旋转 -6° */
.td-step::before { border-radius:11px !important; transition:transform .28s var(--td-ease), box-shadow .28s ease !important; }
.td-step:hover { transform:translateY(-4px) !important; border-color:rgba(79,124,255,.34) !important; box-shadow:0 22px 40px -26px rgba(15,23,42,.55) !important; }
.td-step:hover::before { transform:scale(1.08) rotate(-6deg); box-shadow:0 14px 26px -12px rgba(79,124,255,1); }
.td-step h3 { margin:2px 0 7px !important; font-size:15.5px !important; }
.td-step p { font-size:13.5px !important; line-height:1.78 !important; }
/* FAQ：切换图标为 24px 圆角方块内的加号，展开变减号；展开态带渐变与投影 */
.td-faq-plus {
    width:24px !important; height:24px !important; border-radius:8px !important;
    background:rgba(79,124,255,.10) !important;
    transition:background .24s ease !important;
}
.td-faq-plus::before { width:11px !important; height:2px !important; background:var(--td-primary) !important; }
.td-faq-plus::after {
    width:2px !important; height:11px !important; background:var(--td-primary) !important;
    transition:transform .25s var(--td-ease), opacity .2s ease !important;
}
.td-faq-item[open] .td-faq-plus { background:rgba(79,124,255,.20) !important; }
.td-faq-item[open] .td-faq-plus::after { transform:translate(-50%,-50%) scaleY(0) !important; opacity:0 !important; }
.td-faq-item summary { padding:17px 20px !important; font-size:15px !important; font-weight:600 !important; transition:color .2s ease !important; }
.td-faq-item summary:hover { color:var(--td-primary) !important; }
.td-faq-item:hover { border-color:rgba(79,124,255,.32) !important; }
.td-faq-item[open] {
    border-color:rgba(79,124,255,.45) !important;
    background:linear-gradient(180deg,#ffffff,#fafbff) !important;
    box-shadow:0 18px 34px -26px rgba(24,50,120,.55) !important;
}
/* 手机端徽标同步为圆角方块 32px */
@media (max-width:640px) {
    .td-step::before { width:32px !important; height:32px !important; border-radius:10px !important; }
}


/* ---------- tidy.css 补丁 15：背景光晕上浮 + FAQ 收进白色大卡 ---------- */
/* 光晕与参考站同参数，但改画在 body 自身（fixed attachment）：
   body::before 的 z-index:-1 在我们的层叠环境里被 html 底色压住不显示，这里绕开 */
body.home {
    background-image:
        radial-gradient(680px 460px at 8% -8%, rgba(79,124,255,.20), rgba(0,0,0,0) 70%),
        radial-gradient(620px 420px at 92% -4%, rgba(139,92,246,.18), rgba(0,0,0,0) 70%),
        radial-gradient(900px 560px at 50% 108%, rgba(16,185,129,.10), rgba(0,0,0,0) 70%) !important;
    background-attachment: fixed !important;
}
body.home::before { display:none !important; }
/* FAQ 列表与关于说明收进同一张白色大卡（参考站形态） */
#td-faq .td-content-card { padding:14px !important; }
#td-faq .td-content-card .td-seo-note { margin-top:14px !important; }


/* ---------- tidy.css 补丁 16：页脚深色化（对齐参考站页脚形态，内容不变） ---------- */
body.home .site-footer {
    margin-top:72px !important; padding:0 !important; border-top:0 !important;
    background:linear-gradient(180deg,#0f172a 0%,#0b1220 100%) !important;
    color:#94a3b8 !important; position:relative; overflow:hidden;
}
body.home .site-footer::before {
    content:""; position:absolute; right:-80px; top:-120px; width:420px; height:420px; border-radius:50%;
    background:radial-gradient(circle,rgba(79,124,255,.16),transparent 70%); pointer-events:none;
}
body.home .site-footer > .wrap {
    position:relative; z-index:1; max-width:1140px !important; margin:0 auto !important;
    padding:44px 20px 26px !important;
}
body.home .footer-cols {
    display:grid !important; grid-template-columns:1.6fr 1fr 1.4fr 1fr !important;
    gap:36px !important; text-align:left !important; margin-bottom:26px !important;
}
body.home .footer-group h4 {
    color:#e2e8f0 !important; font-size:14px !important; font-weight:700 !important;
    margin:0 0 14px !important; letter-spacing:.02em;
}
body.home .footer-brand img { border-radius:6px; }
body.home .footer-group p { color:#7f8ea8 !important; font-size:13px !important; margin:0 0 5px !important; }
body.home .footer-group ul { list-style:none !important; margin:0 !important; padding:0 !important; }
body.home .footer-group li { margin-bottom:8px !important; }
body.home .footer-group a { color:#94a3b8 !important; font-size:13.5px !important; text-decoration:none !important; transition:color .2s ease !important; }
body.home .footer-group a:hover { color:#fff !important; text-decoration:none !important; }
body.home .footer-friends-apply a { color:#8ab0ff !important; }
body.home .footer-all {
    margin-top:6px !important; border-top:1px solid rgba(148,163,184,.16) !important; padding-top:14px !important;
}
body.home .footer-all > summary { color:#94a3b8 !important; font-size:13px !important; cursor:pointer; }
body.home .footer-all[open] > summary { color:#cbd5e1 !important; }
body.home .footer-all-cols ul { list-style:none !important; margin:0 !important; padding:0 !important; }
body.home .footer-all-cols li { margin-bottom:6px !important; }
body.home .footer-all a { color:#94a3b8 !important; font-size:12.5px !important; text-decoration:none !important; transition:color .2s ease !important; }
body.home .footer-all a:hover { color:#fff !important; }
body.home .footer-copy {
    border-top:1px solid rgba(148,163,184,.16) !important; color:#7f8ea8 !important;
    text-align:center !important; padding-top:20px !important; margin-top:18px !important;
}
@media (max-width:860px) {
    body.home .footer-cols { grid-template-columns:1fr 1fr !important; gap:24px !important; }
    body.home .footer-brand { grid-column:1 / -1 !important; }
}
@media (max-width:520px) {
    body.home .footer-cols { grid-template-columns:1fr !important; }
}


/* ---------- tidy.css 补丁 17：输入内容垂直居中 + 图标随框变色 ---------- */
/* 占位与「单行已输入内容」都垂直居中；多行粘贴时自动恢复正常行高（td-single 由 JS 维护） */
body.home #input-url:placeholder-shown,
body.home #input-url.td-single { line-height:54px !important; }
/* 输入框聚焦时，左侧链接图标与边框同步变主题色 */
body.home .td-input-icon { transition:color .2s ease !important; }
body.home .td-input-wrap:focus-within .td-input-icon { color:var(--td-primary) !important; }


/* ---------- 补丁 14：手机端平台 chips 收紧（让 8 个入口整齐两行，「更多」不孤行） ----------
   后段补丁 3（522 行起）用 !important 写了 gap:8 / padding:4 11 / font:12.5，
   这里必须同样 !important 且放文件末尾才能覆盖。 */
@media (max-width:640px) {
    .td-platforms { gap:5px !important; }
    .td-chip { padding:4px 8px !important; font-size:11.5px !important; height:29px; }
}
