/* Gemini-only presentation: no shared alert, stock-dot or list-marker overrides. */
.sz-tab[data-tab="gemini"] .sz-tab-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex-shrink: 0;
}
.sz-tabnav .sz-tab[data-tab="gemini"] .sz-tab-icon img.gpixel-brand {
  display: block;
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  object-fit: contain;
}
#serviceContent .sz-title-brand {
  display: inline-flex;
  width: 56px;
  height: 56px;
  flex-shrink: 0;
  vertical-align: middle;
}
#serviceContent .sz-page-header img.gpixel-brand {
  display: block;
  width: 56px;
  height: 56px;
  flex-shrink: 0;
  object-fit: contain;
}
/* 激活方式切换 + 批量清单（2026-11-02） */
#serviceContent .gm-modes {
  display: inline-flex;
  gap: 4px;
  margin: 22px 0 4px;
  padding: 4px;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.04);
}
html.theme-dark #serviceContent .gm-modes { background: rgba(255, 255, 255, 0.06); }
#serviceContent .gm-mode {
  appearance: none;
  border: 0;
  border-radius: 9px;
  padding: 7px 16px;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  opacity: .62;
  cursor: pointer;
  transition: background-color 160ms ease, opacity 160ms ease, box-shadow 160ms ease;
}
#serviceContent .gm-mode.is-active {
  opacity: 1;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .08), 0 4px 14px -8px rgba(15, 23, 42, .28);
}
html.theme-dark #serviceContent .gm-mode.is-active {
  background: rgba(255, 255, 255, 0.12);
  box-shadow: none;
}
#serviceContent .gm-mode:focus-visible { outline: 2px solid #6a8dff; outline-offset: 2px; }
#serviceContent .gm-batch-format { margin: 8px 0 0; font-size: 12.5px; line-height: 1.8; overflow-wrap: anywhere; }
#serviceContent .gm-batch-report {
  margin-top: 14px;
  border: 1px solid rgba(15, 23, 42, .09);
  border-radius: 14px;
  overflow: hidden;
  max-height: 320px;
  overflow-y: auto;
}
html.theme-dark #serviceContent .gm-batch-report { border-color: rgba(255, 255, 255, .12); }
#serviceContent .gm-batch-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  font-size: 13px;
  line-height: 1.5;
  border-top: 1px solid rgba(15, 23, 42, .06);
}
#serviceContent .gm-batch-row:first-child { border-top: 0; }
html.theme-dark #serviceContent .gm-batch-row { border-top-color: rgba(255, 255, 255, .08); }
#serviceContent .gm-batch-no { color: #8a93a3; font-variant-numeric: tabular-nums; }
#serviceContent .gm-batch-mail { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#serviceContent .gm-batch-state { color: #8a93a3; font-size: 12px; white-space: nowrap; }
#serviceContent .gm-batch-row.is-ok .gm-batch-state { color: #2f7d4f; }
#serviceContent .gm-batch-row.is-error .gm-batch-state { color: #b04a38; }
#serviceContent .gm-batch-row.is-running { background: rgba(106, 141, 255, .06); }
#gpixel-check { margin-top: 12px; white-space: normal; }
#gpixel-result {
  --gp-status-bg: #f5f6f8;
  --gp-status-border: #e1e5eb;
  --gp-status-ink: #455366;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  width: 100%;
  max-width: 600px;
  box-sizing: border-box;
  margin: 20px 0 12px;
  padding: 16px 18px;
  border: 1px solid var(--gp-status-border);
  border-radius: 16px;
  background: var(--gp-status-bg);
  color: var(--gp-status-ink);
  font-size: 14px;
  line-height: 1.65;
}
#gpixel-result[hidden] { display: none; }
#gpixel-result[data-tone="pending"] {
  --gp-status-bg: #fff9ed;
  --gp-status-border: #efdbb3;
  --gp-status-ink: #855414;
}
#gpixel-result[data-tone="success"] {
  --gp-status-bg: #eff9f2;
  --gp-status-border: #c4e5cf;
  --gp-status-ink: #23623b;
}
#gpixel-result[data-tone="error"] {
  --gp-status-bg: #fff4f2;
  --gp-status-border: #f0d3cc;
  --gp-status-ink: #9b3f31;
}
#gpixel-result .gpixel-status-icon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 1px solid currentColor;
  border-radius: 9px;
  font-size: 17px;
  line-height: 1;
}
#gpixel-result .gpixel-status-copy { min-width: 0; }
#gpixel-result-title { display: block; font-size: 15px; font-weight: 600; }
#gpixel-result-body { margin: 3px 0 0; overflow-wrap: anywhere; }
html.theme-dark #gpixel-result {
  --gp-status-bg: #20252d;
  --gp-status-border: #3c4656;
  --gp-status-ink: #d3dce9;
}
html.theme-dark #gpixel-result[data-tone="pending"] {
  --gp-status-bg: #30291c;
  --gp-status-border: #665332;
  --gp-status-ink: #f0ca85;
}
html.theme-dark #gpixel-result[data-tone="success"] {
  --gp-status-bg: #1d2c23;
  --gp-status-border: #385b44;
  --gp-status-ink: #a3dcb4;
}
html.theme-dark #gpixel-result[data-tone="error"] {
  --gp-status-bg: #322322;
  --gp-status-border: #67423b;
  --gp-status-ink: #f1b6a9;
}
@media (max-width: 600px) {
  #gpixel-result { padding: 14px; gap: 10px; }
}

/* 2FA 前端预检查（2026-11-03）：6 位验证码 / 备用码当场提示，不等到提交 */
#serviceContent .gm-field-err { color: #b04a38; margin-top: 6px; }
#serviceContent .gm-field-err[hidden] { display: none; }
html.theme-dark #serviceContent .gm-field-err { color: #f1a99b; }

/* 2026-11-03 激活页 Gemini：隐私提示 + 失败卡重排 */
#serviceContent .gm-privacy { margin-top: 12px; background: #eef4ff; border: 1px solid #cfdcf7; border-left: 4px solid #6f8dff; }
#serviceContent .gm-privacy p { margin: 0; color: #35507a; font-size: 13.5px; line-height: 1.75; }
html.theme-dark #serviceContent .gm-privacy { background: rgba(90,140,255,.1); border-color: rgba(120,160,255,.3); }
html.theme-dark #serviceContent .gm-privacy p { color: #c3d4f5; }
#gpixel-result { border-radius: 18px; padding: 18px 18px 16px; gap: 14px; }
#gpixel-result .gpixel-status-icon { width: 34px; height: 34px; flex-basis: 34px; border-radius: 50%; font-size: 18px; }
#gpixel-result-title { font-size: 16px; letter-spacing: -.01em; }
#gpixel-result-body { margin: 6px 0 0; line-height: 1.75; color: inherit; opacity: .92; }
#gpixel-result-body .gpixel-line { display: block; }
#gpixel-prepare { margin: 12px 0 0 18px; height: 38px; padding: 0 18px; border-radius: 999px; font-size: 13px; border: 1px solid #e1e5eb; background: #fff; color: #455366; }
#gpixel-prepare:hover { background: #f7f8fa; }
html.theme-dark #gpixel-prepare { background: transparent; border-color: #3c4656; color: #d3dce9; }

/* 2026-11-03 v2：警告提示框 + 失败卡同卡排版（原因/错误码/额度状态/重提按钮） */
#serviceContent .ac-note-warn { margin-bottom: 12px; }
#serviceContent .gm-warn { display: flex; align-items: flex-start; gap: 10px; margin: 0 0 10px; padding: 13px 16px; border-radius: var(--r-md, 12px); background: var(--err-bg, #fff0f1); box-shadow: inset 0 0 0 1px rgba(215, 0, 21, .12); }
#serviceContent .gm-warn svg { flex: none; width: 18px; height: 18px; margin-top: 2px; fill: none; stroke: var(--err, #d70015); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
#serviceContent .gm-warn p { margin: 0; color: #8a1f1f; font-size: 14px; line-height: 1.6; }
#serviceContent .gm-warn strong { color: var(--err, #d70015); font-weight: 600; }
html.theme-dark #serviceContent .gm-warn { background: rgba(255, 69, 58, .12); box-shadow: inset 0 0 0 1px rgba(255, 105, 97, .28); }
html.theme-dark #serviceContent .gm-warn p { color: #ffb4ad; }
html.theme-dark #serviceContent .gm-warn strong { color: #ff8b82; }

#gpixel-result { max-width: none; margin: 16px 0 0; }
#gpixel-prepare[hidden] { display: none !important; }
#gpixel-result[data-layout="failure"] { display: block; position: relative; padding: 0; overflow: hidden; background: #fff; border: 0; box-shadow: 0 0 0 1px rgba(215, 0, 21, .14), 0 18px 40px -28px rgba(120, 20, 20, .45); color: var(--ink, #1d1d1f); animation: acRise .35s cubic-bezier(.2, .8, .2, 1) both; }
#gpixel-result[data-layout="failure"] .gpixel-status-icon { position: absolute; top: 20px; left: 20px; width: 30px; height: 30px; border: 0; border-radius: 50%; background: var(--err, #d70015); color: #fff; font-size: 16px; font-weight: 700; }
#gpixel-result[data-layout="failure"] .gpixel-status-copy { padding: 0; }
#gpixel-result[data-layout="failure"] #gpixel-result-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 30px; padding: 20px 20px 0 62px; color: var(--err, #d70015); font-size: 13px; font-weight: 600; letter-spacing: .02em; }
#gpixel-result[data-layout="failure"] .gpf-code { flex: none; padding: 3px 9px; border-radius: 999px; background: var(--bg-2, #f5f5f7); color: var(--ink-4, #6e6e73); font: 500 12px/1.4 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: 0; }
#gpixel-result[data-layout="failure"] #gpixel-result-body { margin: 0; opacity: 1; }
#gpixel-result[data-layout="failure"] .gpf-text { margin: 4px 0 0; padding: 0 20px 18px 62px; color: var(--ink, #1d1d1f); font-size: 16px; font-weight: 500; line-height: 1.6; letter-spacing: -.01em; overflow-wrap: anywhere; }
#gpixel-result[data-layout="failure"] .gpf-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px 16px; flex-wrap: wrap; padding: 12px 14px 12px 20px; background: var(--bg-2, #f5f5f7); }
#gpixel-result[data-layout="failure"] .gpf-note { display: inline-flex; align-items: center; gap: 8px; color: var(--ink-4, #6e6e73); font-size: 13.5px; line-height: 1.5; }
#gpixel-result[data-layout="failure"] .gpf-note::before { content: ""; flex: none; width: 16px; height: 16px; border-radius: 50%; background: #b64400 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 4.5v4.2' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'/%3E%3Ccircle cx='8' cy='11.3' r='1' fill='%23fff'/%3E%3C/svg%3E") center/16px no-repeat; }
#gpixel-result[data-layout="failure"] .gpf-foot.is-refunded .gpf-note::before { background: #1d7d38 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.6 8.3l2.2 2.2 4.6-4.8' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat; }
#gpixel-result[data-layout="failure"] #gpixel-prepare { margin: 0; height: 36px; min-height: 36px; padding: 0 16px; border: 0; border-radius: 999px; background: var(--ink, #1d1d1f); color: #fff; font-size: 13.5px; font-weight: 500; }
#gpixel-result[data-layout="failure"] #gpixel-prepare:hover { background: #000; }
#gpixel-result[data-layout="failure"] #gpixel-prepare:disabled { opacity: .5; }
html.theme-dark #gpixel-result[data-layout="failure"] { background: #1c1c1e; color: #f5f5f7; box-shadow: 0 0 0 1px rgba(255, 105, 97, .28); }
html.theme-dark #gpixel-result[data-layout="failure"] .gpf-text { color: #f5f5f7; }
html.theme-dark #gpixel-result[data-layout="failure"] .gpf-foot,
html.theme-dark #gpixel-result[data-layout="failure"] .gpf-code { background: rgba(255, 255, 255, .06); color: #a1a1a6; }
html.theme-dark #gpixel-result[data-layout="failure"] .gpf-note { color: #a1a1a6; }
html.theme-dark #gpixel-result[data-layout="failure"] #gpixel-prepare { background: #f5f5f7; color: #1d1d1f; }
@media (max-width: 600px) {
  #gpixel-result[data-layout="failure"] .gpixel-status-icon { top: 16px; left: 16px; }
  #gpixel-result[data-layout="failure"] #gpixel-result-title { padding: 16px 16px 0 56px; }
  #gpixel-result[data-layout="failure"] .gpf-text { padding: 0 16px 16px 56px; font-size: 15px; }
  #gpixel-result[data-layout="failure"] .gpf-foot { padding: 12px 16px; }
  #gpixel-result[data-layout="failure"] #gpixel-prepare { width: 100%; }
}

/* 2026-11-03 三档：输入卡密后显示识别到的套餐 */
#serviceContent .gm-plan { display: inline-flex; align-items: center; gap: 6px; margin: 10px 0 0; padding: 5px 12px; border-radius: 999px; background: #eef4ff; color: #1d4ed8; font-size: 13px; font-weight: 600; line-height: 1.4; }
#serviceContent .gm-plan::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #3186ff; }
#serviceContent .gm-plan[hidden] { display: none; }
html.theme-dark #serviceContent .gm-plan { background: rgba(90,140,255,.14); color: #a9c4ff; }

/* 2026-11-03 傻瓜式「三步完成激活」（替换渐变教程卡 + 4 项检查）：朴素底色、无渐变 */
#serviceContent .gm-steps { margin: 22px 0 12px; padding: 20px 22px; border-radius: 16px; background: var(--bg-2, #f5f5f7); }
#serviceContent .gm-steps-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
#serviceContent .gm-steps-head h2 { margin: 0; font-size: 16px; font-weight: 600; letter-spacing: -.01em; }
#serviceContent .gm-steps-head a { font-size: 14px; font-weight: 500; white-space: nowrap; }
#serviceContent .gm-steps-list { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; counter-reset: gms; }
#serviceContent .gm-steps-list li { position: relative; padding-left: 36px; counter-increment: gms; }
#serviceContent .gm-steps-list li::before { content: counter(gms); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--ink, #1d1d1f); color: #fff; font-size: 13px; font-weight: 600; line-height: 1; }
#serviceContent .gm-steps-list b { display: block; font-size: 15px; font-weight: 600; line-height: 24px; }
#serviceContent .gm-steps-list span { display: block; margin-top: 2px; color: var(--ink-4, #6e6e73); font-size: 14px; line-height: 1.65; }
#serviceContent .gm-steps a, #serviceContent .gm-howto { color: var(--link, #0066cc); white-space: nowrap; }
#serviceContent .gm-steps-foot { margin: 14px 0 0; padding-top: 12px; border-top: 1px solid rgba(0, 0, 0, .08); color: var(--ink-4, #6e6e73); font-size: 13.5px; line-height: 1.65; }
#serviceContent .gm-steps-foot + .gm-steps-foot { margin-top: 6px; padding-top: 0; border-top: 0; }
#serviceContent .gm-steps-foot b { margin-right: 6px; color: var(--ink, #1d1d1f); font-weight: 600; }
html.theme-dark #serviceContent .gm-steps { background: rgba(255, 255, 255, .06); }
html.theme-dark #serviceContent .gm-steps-list span, html.theme-dark #serviceContent .gm-steps-foot { color: #a1a1a6; }
html.theme-dark #serviceContent .gm-steps-list li::before { background: #f5f5f7; color: #1d1d1f; }
html.theme-dark #serviceContent .gm-steps-foot { border-top-color: rgba(255, 255, 255, .1); }
html.theme-dark #serviceContent .gm-steps-foot b { color: #f5f5f7; }
html.theme-dark #serviceContent .gm-steps a, html.theme-dark #serviceContent .gm-howto { color: #2997ff; }
@media (max-width: 600px) { #serviceContent .gm-steps { padding: 18px 16px; } }
/* 处理中 = 一切正常：改成平静的蓝色（原来是橙色警示色） */
#gpixel-result[data-tone="pending"] { --gp-status-bg: #eef4ff; --gp-status-border: #cfdcf7; --gp-status-ink: #1d4ed8; }
html.theme-dark #gpixel-result[data-tone="pending"] { --gp-status-bg: rgba(90, 140, 255, .12); --gp-status-border: rgba(120, 160, 255, .3); --gp-status-ink: #a9c4ff; }
