/* 各语言版本共用的样式（2026-11-04 统一改版：整站学 FlashFiscal——白底、只用一个主色、首屏一个主按钮 + 三条信任标签 + 能/不能处理清单；结果区见 result.css，学 KestKlar）。
   版式：单栏 1040px，首屏左文右"申报对照表"样张，窄屏上下叠。
   字体只用系统字（不连 Google Fonts：国内能打开，德国也不涉及向第三方传 IP）；数字一律等宽对齐。 */
:root{
  --paper:#ffffff; --surface:#ffffff; --tint:#f4f7f6; --ink:#152029; --muted:#56616b; --line:#dde3e5;
  --accent:#0e6658; --accent-soft:#e1efec; --bar:#152029; --bar-ink:#ffffff; --stamp:#b3372c; --warn-soft:#f7ebe4;
  --font-body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-num:"SF Mono",ui-monospace,Menlo,Consolas,"Roboto Mono",monospace;
  color-scheme:light;
}
:lang(zh){--font-body:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC","Source Han Sans SC",system-ui,sans-serif}
:lang(ja){--font-body:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic UI","Yu Gothic","Meiryo","Noto Sans JP",system-ui,sans-serif}
@media (prefers-color-scheme: dark){
  :root{
    --paper:#0f1519; --surface:#151d23; --tint:#1a242b; --ink:#e6ecee; --muted:#9aa7ae; --line:#2a363e;
    --accent:#5cc2ae; --accent-soft:#183731; --bar:#1d5a50; --bar-ink:#ffffff; --stamp:#e2766b; --warn-soft:#33241f; color-scheme:dark;
  }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.75;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));
  padding-top:env(safe-area-inset-top,0px);padding-bottom:max(40px,env(safe-area-inset-bottom,0px));
  overflow-wrap:break-word}
:lang(de) body,body:lang(de),:lang(nl) body,body:lang(nl){hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:10 4 4}
:lang(ja) body,body:lang(ja){line-break:strict;word-break:normal}
.wrap{max-width:1040px;margin:0 auto}
a{color:var(--accent);text-underline-offset:3px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
p{margin:0 0 12px;max-width:62ch}
:lang(ja) p{max-width:40em}
.num{font-family:var(--font-num);font-variant-numeric:tabular-nums}

/* 顶栏 */
.top{display:flex;align-items:center;justify-content:space-between;gap:10px 14px;padding-block:16px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;color:var(--ink);text-decoration:none;min-width:0}
.brand i{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:6px;background:var(--accent);color:var(--surface);font-style:normal;font-size:14px;font-weight:700}
.top .right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.top .tag{font-size:13px;color:var(--muted)}
.lang{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.lang select{font:inherit;font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:4px 8px}
/* 顶栏链接只做文字链接：首屏只留一个主按钮 */
.top .go{font-size:14.5px;font-weight:600;text-decoration:none;padding:5px 2px;white-space:nowrap;color:var(--ink)}
.top .go:hover{color:var(--accent)}

/* 首屏 */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:start;padding-block:56px 40px}
.eyebrow{font-size:13px;letter-spacing:.01em;color:var(--accent);font-weight:600;margin:0 0 10px;text-wrap:balance}
:lang(zh) .eyebrow,:lang(ja) .eyebrow{letter-spacing:.06em}
h1{font-size:clamp(30px,4.6vw,46px);line-height:1.18;margin:0 0 18px;font-weight:800;letter-spacing:-.02em;text-wrap:balance}
:lang(ja) h1,:lang(zh) h1{letter-spacing:0;line-height:1.3}
.lead{font-size:18px;max-width:34em}
.cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:24px 0 10px}
.lead b{font-weight:700;color:var(--ink)}
.btn{display:inline-block;font:inherit;font-size:16px;font-weight:700;background:var(--accent);color:var(--paper);border:0;border-radius:10px;padding:12px 24px;text-decoration:none;cursor:pointer}
.hero .btn{font-size:17px;padding:14px 28px}
.btn:hover{filter:brightness(1.07)}
.btn[disabled]{opacity:.6;cursor:default}
.small{font-size:13.5px;color:var(--muted)}

/* 样张 */
.sheet{position:relative;margin:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px 20px 16px;min-width:0;box-shadow:0 1px 2px rgba(16,24,32,.04),0 8px 28px rgba(16,24,32,.06)}
.sheet h2{font-size:15px;margin:0 0 2px;padding-right:5.5em}
.sheet .sub{font-size:12.5px;color:var(--muted);margin:0 0 12px;max-width:none}
.stamp{position:absolute;top:14px;right:14px;border:2px solid var(--stamp);color:var(--stamp);border-radius:6px;padding:0 8px;font-size:13px;font-weight:700;letter-spacing:.12em;transform:rotate(-6deg)}
.tblw{overflow-x:auto}
.sheet table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:400px}
.sheet th,.sheet td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;vertical-align:top}
.sheet th{font-weight:500;color:var(--muted);font-size:12px}
.sheet th:first-child,.sheet td:first-child{text-align:left;white-space:normal;min-width:7.5em;padding-left:0}
.sheet td{font-family:var(--font-num);font-variant-numeric:tabular-nums}
.sheet td:first-child,.sheet td.txt{font-family:var(--font-body)}
.sheet td small{display:block;font-family:var(--font-num);font-size:12px;color:var(--muted)}
.sheet tr.sum td{border-bottom:0;font-weight:700}
.sheet tr.sum td:last-child{color:var(--accent)}
.sheet dl{margin:12px 0 0;display:grid;gap:4px;font-size:13px}
.sheet dl div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--line);padding:3px 0}
.sheet dt{color:var(--muted)}
.sheet dd{margin:0;font-family:var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap}
.sheet dl div.total dd{color:var(--accent);font-weight:700}
.sheet .foot{font-size:12px;color:var(--muted);margin:10px 0 0;max-width:none}

/* 区块 */
section{padding-block:44px;border-top:1px solid var(--line)}
h2.sec{font-size:26px;line-height:1.3;margin:0 0 18px;letter-spacing:-.01em;text-wrap:balance}
.facts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.facts li{background:var(--tint);border:1px solid var(--line);border-radius:10px;padding:16px 18px;min-width:0}
.facts b{display:block;font-size:16px;margin-bottom:4px}
.facts span{font-size:14.5px;color:var(--muted)}
.facts a{font-size:12.5px}
.hard{list-style:none;margin:0;padding:0;display:grid;max-width:760px}
.hard li{display:grid;grid-template-columns:9.5em minmax(0,1fr);gap:14px;padding:12px 0;border-bottom:1px dashed var(--line)}
.hard li:last-child{border-bottom:0}
.hard b{font-size:15px}
.hard span{font-size:15px;color:var(--muted)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.steps li{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:16px 18px;min-width:0}
.steps .n{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:var(--accent-soft);font-size:12.5px;color:var(--accent);font-weight:700;margin-bottom:8px}
.steps b{display:block;margin-bottom:4px}
.steps span{font-size:14.5px;color:var(--muted)}
.steps .xg-go{display:block;margin-top:6px;font-size:14.5px;font-weight:600}
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:0 0 8px}
.price .big{font-family:var(--font-num);font-size:34px;font-weight:700}
.price .per{color:var(--muted)}

/* 表单 */
form.wl{background:var(--tint);border:1px solid var(--line);border-radius:12px;padding:20px;display:grid;gap:18px;max-width:760px}
fieldset{border:0;margin:0;padding:0;min-width:0}
legend,.lab{font-weight:700;font-size:15px;margin-bottom:8px;padding:0}
.opt{font-weight:400;color:var(--muted);font-size:13px;margin-left:6px}
input[type=email],textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:10px 12px}
textarea{min-height:76px;resize:vertical}
select.pick{width:100%;max-width:360px;font:inherit;font-size:16px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:9px 10px;margin-bottom:6px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{position:relative;cursor:pointer}
.chips input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chips span{display:inline-block;border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:5px 14px;font-size:14.5px}
.chips input:checked + span{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}
.chips input:focus-visible + span{outline:2px solid var(--accent);outline-offset:2px}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--muted)}
.consent input{margin-top:5px;flex:none;width:18px;height:18px;accent-color:var(--accent)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.msg{margin:0;font-size:15px;max-width:none}
.msg.ok{color:var(--accent);font-weight:600}
.msg.err{color:var(--stamp)}

/* 问答 */
.faq{max-width:760px}
.faq details{border-bottom:1px solid var(--line);padding:12px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:16px}
.faq details p{margin:8px 0 0;color:var(--muted);font-size:15px}

/* 页脚：运营者、隐私、依据 */
footer{border-top:1px solid var(--line);padding-block:26px 10px;font-size:13.5px;color:var(--muted)}
footer p{max-width:76ch}
footer h3{font-size:14.5px;color:var(--ink);margin:18px 0 6px}
footer address{font-style:normal;line-height:1.7}
.del{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0}
.del input{max-width:260px;width:100%;font-size:14px;padding:6px 10px;border-radius:6px}
.del button{font:inherit;font-size:14px;background:none;border:1px solid var(--line);color:var(--ink);border-radius:6px;padding:5px 12px;cursor:pointer}
.src{font-size:12.5px}
.src li{margin-bottom:2px}

/* ---------- 2026-11-04 统一改版：中文版先用的两个组件挪进共用（类名不变） ---------- */
/* 首屏三条信任标签：报表不上传、几分钟出结果、价格 */
.trust{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
/* 勾固定在左侧第一行，文字整块在右侧、过长就在标签里换行（德文、日文长句或被浏览器翻译插件改写时也不会把勾单独留在一行） */
.trust li{position:relative;max-width:100%;min-width:0;border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:5px 13px 5px 31px;font-size:13.5px;color:var(--muted);line-height:1.5;overflow-wrap:anywhere}
.trust b{color:var(--ink);margin-right:6px}
.trust li::before{content:"✓";position:absolute;left:13px;top:5px;color:var(--accent);font-weight:700;line-height:1.5}
/* 能处理 ✓ / 不能处理 ✕ 两栏清单 */
.cover{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:none;margin-top:18px}
.cover > div{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:var(--surface);min-width:0}
.cover h3{font-size:16px;margin:0 0 8px}
.cover ul{margin:0;padding-left:1.3em;font-size:14.5px}
.cover li{margin-bottom:5px}
.cover div:first-child li::marker{content:"✓  ";color:var(--accent)}
.cover div:last-child li::marker{content:"✕  ";color:var(--stamp)}
@media (max-width:600px){.cover{grid-template-columns:1fr}}

@media (max-width:860px){
  .hero{grid-template-columns:1fr;gap:28px;padding-top:32px}
  .steps{grid-template-columns:1fr}
}
@media (max-width:600px){
  .facts{grid-template-columns:1fr}
  .hard li{grid-template-columns:1fr;gap:2px}
  .top .tag{display:none}
  .lead{font-size:17px}
  .sheet{padding:16px 14px 12px}
  .sheet table{min-width:0;font-size:12.5px}
  .sheet .hide-sm{display:none}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* 账户页与付费页（2026-11-02） */
[hidden]{display:none !important}
main.acct section:first-child{border-top:0}
.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:20px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;max-width:520px;margin:0 0 14px}
.card p{margin:0}
input.code{width:100%;max-width:220px;font-family:var(--font-num);font-size:24px;letter-spacing:.3em;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:8px 12px}
.row{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}
button.link{font:inherit;font-size:14.5px;background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.who{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;max-width:none}
.passes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:760px;margin:8px 0 8px}
.pass{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:16px;display:grid;gap:8px;align-content:start;min-width:0}
.pass h3{margin:0;font-size:16px;line-height:1.4}
.pass .status{margin:0;color:var(--muted);font-size:14.5px}
.pass .btn{justify-self:start}
.pass.on{border-color:var(--accent)}
.pass.on .status{color:var(--accent);font-weight:600}
.pass.hl{outline:2px solid var(--accent);outline-offset:2px}
.terms{max-width:760px;margin:0;padding-left:1.2em;color:var(--muted);font-size:15px}
.terms li{margin-bottom:6px}
dl.spec{max-width:760px;margin:0;display:grid;font-size:14.5px}
dl.spec div{display:grid;grid-template-columns:11em minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px dashed var(--line)}
dl.spec dt{color:var(--muted)}
dl.spec dd{margin:0}
@media (max-width:600px){
  .passes{grid-template-columns:1fr}
  dl.spec div{grid-template-columns:1fr;gap:0}
}

/* 点开数字前的确认框（/assets/reveal.js） */
dialog.reveal{max-width:520px;width:calc(100% - 32px);border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);padding:22px}
dialog.reveal::backdrop{background:rgba(10,15,20,.55)}
dialog.reveal h2{font-size:20px;margin:0 0 10px}
dialog.reveal .body{color:var(--muted);font-size:15px}
dialog.reveal .row{margin-top:14px}

/* “用 Google 继续”按钮（Google 品牌规范：浅色白底灰边、深色深底；官方彩色 G 图标不改） */
.gbtn{display:flex;align-items:center;justify-content:center;gap:10px;max-width:520px;height:44px;padding:0 16px;border:1px solid #747775;border-radius:22px;background:#fff;color:#1f1f1f;font:500 15px/1 var(--font-body);text-decoration:none}
.gbtn:hover{background:#f6f8f7}
.gbtn img{width:18px;height:18px;flex:none}
@media (prefers-color-scheme: dark){.gbtn{background:#131314;border-color:#8e918f;color:#e3e3e3}.gbtn:hover{background:#1e1f20}}
.or{display:flex;align-items:center;gap:10px;max-width:520px;color:var(--muted);font-size:13.5px;margin:14px 0}
.or::before,.or::after{content:"";flex:1;border-top:1px solid var(--line)}

/* WhatsApp 联系按钮：右下角固定，不加载第三方脚本，只是一个链接 */
.wa{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:50;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.25);text-decoration:none}
.wa:hover{background:#1ebe5b}
.wa:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media print{.wa{display:none}}

/* 一行页脚：© 公司 · 法定信息 · 隐私 · 条款 · 邮箱。长文都在 /<语言>/privacy/、/<语言>/terms/、Impressum、特商法页 */
footer.legal{border-top:1px solid var(--line);margin-top:40px;padding-block:18px calc(18px + 64px);font-size:13px;color:var(--muted)}
footer.legal p{margin:0;max-width:none;line-height:1.9}
footer.legal a{color:inherit;text-underline-offset:3px}
footer.legal a:hover{color:var(--ink)}
/* 隐私页、条款页正文 */
main.doc{max-width:72ch}
main.doc h2.sec{margin-top:6px}
main.doc address{font-style:normal;line-height:1.7}
.sources{margin-top:28px}

/* 导出报表教程（/assets/export-guide.js，2026-11-04）：电脑 / 手机两个选项卡 + 自画示意动画；各计算页共用 */
details.xg{max-width:860px;margin:14px 0 12px;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
details.xg > summary{cursor:pointer;list-style:none;padding:14px 18px;font-weight:700;color:var(--accent);display:flex;align-items:center;gap:10px;flex-wrap:wrap}
details.xg > summary::-webkit-details-marker{display:none}
details.xg > summary::before{content:"▸";color:var(--accent);flex:none}
details.xg[open] > summary::before{content:"▾"}
details.xg > summary .xg-sub{font-weight:400;font-size:14px;color:var(--muted)}
.xg-in{padding:0 18px 18px}
.xg-tabs{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--tint);margin:0 0 14px}
.xg-tabs [role=tab]{font:inherit;font-size:14.5px;font-weight:600;color:var(--muted);background:none;border:0;border-radius:999px;padding:6px 16px;cursor:pointer;min-height:36px}
.xg-tabs [role=tab][aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(16,24,32,.12)}
.xg-panel{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:16px 24px;align-items:start}
.xg-panel.phone{grid-template-columns:180px minmax(0,1fr)}
.xg ol.xg-steps{margin:0;padding:0;list-style:none;counter-reset:xg;color:var(--ink);font-size:15px}
.xg ol.xg-steps > li{counter-increment:xg;position:relative;padding:6px 8px 6px 36px;margin:0 0 2px;border-radius:8px;transition:background-color .3s}
.xg ol.xg-steps > li::before{content:counter(xg);position:absolute;left:6px;top:7px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:12.5px;font-weight:700}
.xg ol.xg-steps > li.now{background:var(--accent-soft)}
.xg ol.xg-steps > li.now::before{background:var(--accent);color:var(--surface)}
.xg ol.xg-steps b{font-weight:700}
.xg-tips{margin:16px 0 0;background:var(--warn-soft);border-radius:10px;padding:12px 16px;font-size:14.5px}
.xg-tips > b{display:block;margin-bottom:4px}
.xg .xg-tips ul{margin:0;padding-left:1.2em;color:var(--ink);font-size:14.5px}
.xg-tips li{margin-bottom:3px}
.xg .src{margin:10px 0 0;max-width:none}
/* 示意画面：字号用 em，静态分步图时整体缩小 */
.xg-demo{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px}
.xg-demo > .xg-stage{grid-column:1 / -1}
.xg-cap{font-size:12px;color:var(--muted);margin:0;grid-column:2}
.xg-pause{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:11px;cursor:pointer;display:grid;place-items:center;padding:0}
.xg-stage{position:relative;font-size:11px;line-height:1.4;color:var(--ink);font-family:var(--font-body)}
.xg-stage.desktop{aspect-ratio:16/11;max-width:360px}
.xg-stage.phone{aspect-ratio:9/17;width:170px}
.xg-fr{position:absolute;inset:0;overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:10px;opacity:0;transition:opacity .45s ease;box-shadow:0 6px 20px rgba(16,24,32,.08)}
.xg-fr.on{opacity:1}
.xg-stage.phone .xg-fr{border:5px solid var(--ink);border-radius:22px}
.xg-fr::after{content:attr(data-n);position:absolute;left:6px;bottom:6px;display:grid;place-items:center;width:1.9em;height:1.9em;border-radius:50%;background:var(--accent);color:var(--surface);font-weight:700}
.xg-chrome{display:flex;align-items:center;gap:.35em;padding:.45em .7em;background:var(--tint);border-bottom:1px solid var(--line)}
.xg-chrome i{width:.65em;height:.65em;border-radius:50%;background:var(--line)}
.xg-chrome span{margin-left:.6em;padding:.05em .8em;border-radius:4px;background:var(--surface);color:var(--muted);font-size:.9em}
.xg-body{padding:.7em .8em;display:grid;gap:.45em;align-content:start;position:relative}
.xg-nav{display:flex;gap:.9em;flex-wrap:wrap;padding-bottom:.4em;border-bottom:1px solid var(--line);color:var(--muted)}
.xg-nav .on{color:var(--ink);font-weight:600}
.xg-menu{display:grid;gap:.15em;justify-self:end;width:55%;padding:.35em;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 4px 12px rgba(16,24,32,.1)}
.xg-menu span{padding:.2em .45em}
.xg-h{font-weight:700;font-size:1.15em}
.xg-row,.xg-file,.xg-f{display:flex;justify-content:space-between;align-items:center;gap:.6em;padding:.35em .45em;border-bottom:1px solid var(--line)}
.xg-row i,.xg-file i{font-style:normal;color:var(--accent);font-weight:700;padding:0 .3em}
.xg-f label{color:var(--muted)}
.xg-f b{font-weight:600;border:1px solid var(--line);border-radius:4px;padding:.1em .6em;min-width:5.5em;text-align:left}
.xg-f.dim{opacity:.45}
.xg-btns{display:flex;justify-content:flex-end;gap:.6em;align-items:center;margin-top:.3em;color:var(--muted)}
.xg-btn{background:var(--accent);color:var(--surface) !important;font-weight:700;border-radius:5px;padding:.3em 1em}
.xg-bar{display:flex;align-items:center;gap:.8em;padding:.3em .1em .5em;border-bottom:1px solid var(--line);font-weight:600}
.xg-bar b{font-size:1.25em;line-height:1;padding:.1em .3em}
.xg-skel{height:2.6em;border-radius:6px;background:var(--tint)}
.xg-skel.s{height:5em}
.xg-stage .hl{outline:2px solid var(--accent);outline-offset:1px;background:var(--accent-soft);color:var(--accent);border-radius:4px}
.xg-stage .xg-btn.hl{background:var(--accent);color:var(--surface)}
.xg-fr.on .hl{animation:xg-pulse 1.3s ease-out .35s 2}
@keyframes xg-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 45%,transparent)}100%{box-shadow:0 0 0 .7em transparent}}
@media (max-width:700px){
  details.xg > summary{padding:12px 14px}
  .xg-in{padding:0 14px 14px}
  .xg-panel,.xg-panel.phone{grid-template-columns:1fr}
  .xg-stage.desktop{max-width:none}
  .xg-stage.phone{margin-inline:auto}
}
/* 减少动效：不轮播，改成一排静态分步图（右下角数字对应步骤编号） */
@media (prefers-reduced-motion: reduce){
  .xg-panel,.xg-panel.phone{grid-template-columns:1fr}
  .xg-stage{display:grid;gap:10px;font-size:9.5px}
  .xg-stage.desktop{aspect-ratio:auto;max-width:none;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
  .xg-stage.phone{aspect-ratio:auto;width:auto;grid-template-columns:repeat(auto-fill,minmax(118px,1fr))}
  .xg-fr{position:relative;inset:auto;opacity:1;transition:none}
  .xg-stage.desktop .xg-fr{aspect-ratio:16/11}
  .xg-stage.phone .xg-fr{aspect-ratio:9/16}
  .xg-fr.on .hl{animation:none}
  .xg ol.xg-steps > li{transition:none}
}
@media print{details.xg{display:none}}
