.svc-custom-card { overflow: hidden; }
    .svc-custom-page {
      max-width: 920px;
      margin: 0 auto;
      min-width: 0;
    }
    .svc-custom-card .card,
    .svc-custom-page {
      overflow-wrap: break-word;
      word-break: break-word;
    }
    .svc-hero {
      margin: 0 0 28px;
      padding: 22px 22px 24px;
      border-radius: 14px;
      border: 1px solid color-mix(in srgb, var(--accent-primary) 35%, transparent);
      background: linear-gradient(135deg, color-mix(in srgb, var(--accent-primary) 14%, transparent) 0%, color-mix(in srgb, var(--accent-success, #3fb950) 6%, transparent) 100%);
    }
    html[data-theme="light"] .svc-hero {
      border-color: color-mix(in srgb, var(--accent-primary) 22%, transparent);
      background: linear-gradient(135deg, color-mix(in srgb, var(--accent-primary) 8%, transparent) 0%, color-mix(in srgb, var(--accent-success, #16a34a) 5%, transparent) 100%);
    }
    .svc-hero-title {
      margin: 0 0 12px;
      font-size: 28px;
      font-weight: 800;
      letter-spacing: -0.02em;
      line-height: 1.25;
      color: var(--text-primary);
      overflow-wrap: anywhere;
      word-break: break-word;
      hyphens: auto;
    }
    .svc-hero-sub {
      margin: 0 0 14px;
      font-size: 16px;
      font-weight: 600;
      line-height: 1.45;
      color: var(--accent-primary);
    }
    .svc-hero-lead {
      margin: 0;
      font-size: 15px;
      line-height: 1.75;
      color: var(--text-secondary);
      overflow-wrap: anywhere;
      word-break: break-word;
    }
    .svc-hero-lead strong { color: var(--text-primary); font-weight: 700; }
    .svc-grid {
      display: grid;
      gap: 14px;
      margin-bottom: 28px;
    }
    .svc-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    @media (max-width: 820px) {
      .svc-grid--3 { grid-template-columns: 1fr; }
    }
    .svc-tile {
      padding: 16px 18px;
      border-radius: 12px;
      border: 1px solid var(--border-color);
      background: var(--bg-tertiary);
      min-height: 120px;
    }
    .svc-tile h3 {
      margin: 0 0 8px;
      font-size: 15px;
      font-weight: 700;
      color: var(--text-primary);
    }
    .svc-tile p {
      margin: 0;
      font-size: 14px;
      line-height: 1.65;
      color: var(--text-secondary);
    }
    .svc-sec-title {
      margin: 0 0 14px;
      font-size: 17px;
      font-weight: 700;
      color: var(--text-primary);
      padding-bottom: 8px;
      border-bottom: 1px solid var(--border-color);
      overflow-wrap: anywhere;
      word-break: break-word;
      line-height: 1.35;
    }
    .svc-pill-list {
      list-style: none;
      margin: 0 0 28px;
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
    .svc-pill-list li {
      font-size: 13px;
      padding: 8px 14px;
      border-radius: 999px;
      border: 1px solid var(--border-color);
      background: var(--bg-secondary);
      color: var(--text-secondary);
    }
    .svc-steps {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 12px;
      margin: 0 0 28px;
      counter-reset: svcstep;
    }
    @media (max-width: 900px) {
      .svc-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
    @media (max-width: 480px) {
      .svc-steps { grid-template-columns: 1fr; }
    }
    .svc-step {
      position: relative;
      padding: 16px 14px 16px 44px;
      border-radius: 12px;
      border: 1px solid var(--border-color);
      background: var(--bg-tertiary);
      font-size: 13px;
      line-height: 1.6;
      color: var(--text-secondary);
    }
    .svc-step::before {
      counter-increment: svcstep;
      content: counter(svcstep);
      position: absolute;
      left: 12px;
      top: 14px;
      width: 26px;
      height: 26px;
      border-radius: 8px;
      font-size: 13px;
      font-weight: 800;
      display: flex;
      align-items: center;
      justify-content: center;
      background: color-mix(in srgb, var(--accent-primary) 20%, transparent);
      color: var(--accent-primary);
    }
    html[data-theme="light"] .svc-step::before {
      background: color-mix(in srgb, var(--accent-primary) 12%, transparent);
    }
    .svc-step strong {
      display: block;
      margin-bottom: 4px;
      color: var(--text-primary);
      font-size: 14px;
    }
    .svc-checklist {
      margin: 0 0 22px;
      padding: 0 0 0 22px;
      color: var(--text-secondary);
      font-size: 14px;
      line-height: 1.85;
    }
    .svc-checklist li { margin-bottom: 6px; }
    .svc-note {
      margin: 0 0 22px;
      padding: 14px 16px;
      border-radius: 10px;
      font-size: 13px;
      line-height: 1.65;
      border: 1px dashed var(--border-color);
      color: var(--text-secondary);
      background: var(--bg-tertiary);
    }
    .svc-note strong { color: var(--text-primary); }
    /* 商品页/商品简介富文本：自适应宽度，避免英文译文撑破布局 */
    .cg-rich-html {
      max-width: 100%;
      min-width: 0;
      overflow-x: auto;
      overflow-wrap: break-word;
      word-break: break-word;
      line-height: 1.65;
    }
    .cg-rich-html p,
    .cg-rich-html li,
    .cg-rich-html td,
    .cg-rich-html th,
    .cg-rich-html h1,
    .cg-rich-html h2,
    .cg-rich-html h3,
    .cg-rich-html h4,
    .cg-rich-html span,
    .cg-rich-html div {
      overflow-wrap: break-word;
      word-break: break-word;
      max-width: 100%;
    }
    .cg-rich-html img,
    .cg-rich-html video,
    .cg-rich-html iframe,
    .cg-rich-html embed,
    .cg-rich-html object {
      max-width: 100% !important;
      height: auto !important;
    }
    .cg-rich-html table {
      width: 100% !important;
      max-width: 100%;
      border-collapse: collapse;
      display: block;
      overflow-x: auto;
    }
    .cg-rich-html pre,
    .cg-rich-html code {
      max-width: 100%;
      overflow-x: auto;
      white-space: pre-wrap;
      word-break: break-word;
    }
    .cg-items-grid {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr));
      margin-bottom: 20px;
    }
    .cg-item-card {
      border: 1px solid var(--border-color); border-radius: 12px; padding: 14px;
      background: var(--bg-tertiary); cursor: pointer; transition: border-color 0.15s;
      min-width: 0;
    }
    .cg-item-card strong {
      display: block;
      line-height: 1.35;
      overflow-wrap: anywhere;
      word-break: break-word;
    }
    .cg-item-card p {
      overflow-wrap: anywhere;
      word-break: break-word;
    }
    .svc-cta-row {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
      margin-top: 8px;
    }
    .svc-cta-primary {
      font-size: 15px;
      font-weight: 700;
      padding: 12px 22px;
    }
    .svc-cs-hint {
      margin: 14px 0 0;
      font-size: 13px;
      color: var(--accent-warning, #d4a72c);
      line-height: 1.55;
    }
    .svc-cs-hint[hidden] { display: none !important; }
    .cg-page-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
    .cg-page-tab {
      padding: 8px 14px; border-radius: 999px; border: 1px solid var(--border-color);
      background: var(--bg-secondary); color: var(--text-secondary); cursor: pointer; font-size: 13px;
      max-width: 100%;
      overflow-wrap: anywhere;
      word-break: break-word;
      text-align: center;
      line-height: 1.3;
    }
    .cg-page-tab.active {
      border-color: var(--accent-primary); color: var(--accent-primary);
      background: color-mix(in srgb, var(--accent-primary) 12%, transparent);
    }
    .cg-item-card:hover, .cg-item-card.selected {
      border-color: var(--accent-primary);
      box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent-primary) 25%, transparent);
    }
    .cg-item-meta { font-size: 12px; color: var(--text-secondary); margin-top: 4px; }
    .cg-form-box {
      border: 1px solid var(--border-color); border-radius: 12px; padding: 18px;
      background: var(--bg-tertiary);
    }
    .cg-form-box label {
      display: block;
      margin-bottom: 6px;
      font-size: 13px;
      font-weight: 600;
      overflow-wrap: anywhere;
      word-break: break-word;
      line-height: 1.35;
    }
    .cg-form-box input, .cg-form-box textarea {
      width: 100%; box-sizing: border-box; margin-bottom: 14px;
      padding: 10px 12px; border-radius: 8px; border: 1px solid var(--border-color);
      background: var(--bg-secondary); color: var(--text-primary);
    }
    #customGoodsMessage { margin-top: 12px; font-size: 14px; line-height: 1.55; }
    #customGoodsMessage.ok { color: var(--accent-success, #3fb950); }
    #customGoodsMessage.err { color: #f85149; }
    .cg-submit-progress {
      margin-top: 10px;
      height: 4px;
      border-radius: 2px;
      background: var(--border-color);
      overflow: hidden;
    }
    .cg-submit-progress__bar {
      display: block;
      height: 100%;
      width: 35%;
      border-radius: 2px;
      background: var(--accent-primary);
      transform: translateX(-100%);
    }
    .cg-submit-progress.is-active .cg-submit-progress__bar {
      animation: cg-submit-indeterminate 1.1s ease-in-out infinite;
    }
    .cg-submit-progress.is-success .cg-submit-progress__bar {
      animation: none;
      width: 100%;
      transform: none;
      background: var(--accent-success, #3fb950);
      transition: width 0.35s ease;
    }
    @keyframes cg-submit-indeterminate {
      0% { transform: translateX(-100%); }
      100% { transform: translateX(320%); }
    }
    #customGoodsSubmitBtn:disabled {
      opacity: 0.7;
      cursor: not-allowed;
    }
    #customGoodsSelectedSummary {
      overflow-wrap: anywhere;
      word-break: break-word;
      line-height: 1.5;
    }
    .svc-custom-page .services-flow-trail {
      overflow-wrap: anywhere;
      word-break: break-word;
      line-height: 1.45;
    }
    /* 非简体中文：译文通常更长，略收紧字号与间距 */
    html[lang="en"] .svc-hero-title,
    html[lang="zh-TW"] .svc-hero-title {
      font-size: 24px;
      line-height: 1.3;
    }
    html[lang="en"] .svc-hero-lead,
    html[lang="zh-TW"] .svc-hero-lead {
      font-size: 14px;
      line-height: 1.65;
    }
    html[lang="en"] .svc-sec-title,
    html[lang="zh-TW"] .svc-sec-title {
      font-size: 16px;
    }
    html[lang="en"] .cg-items-grid,
    html[lang="zh-TW"] .cg-items-grid {
      grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr));
      gap: 10px;
    }
    html[lang="en"] .cg-item-card,
    html[lang="zh-TW"] .cg-item-card {
      padding: 12px;
    }
    html[lang="en"] .svc-cta-primary,
    html[lang="zh-TW"] .svc-cta-primary {
      font-size: 14px;
      padding: 11px 18px;
      white-space: normal;
      text-align: center;
      line-height: 1.3;
    }
    html[lang="en"] .cg-rich-html,
    html[lang="zh-TW"] .cg-rich-html {
      font-size: 14px;
    }
