/* ==JA-LAYOUT-LOCALIZED== 森瑞日文站布局本土化层（幂等，可重复注入） */
/* 仅作用于 html[lang="ja"]，全部新增/覆盖类，不改动计算器/滑块等交互 DOM */

/* —— A. 面包屑（パンくずリスト，由 ja_layout.js 注入） —— */
html[lang="ja"] .ja-breadcrumb{
  font-size:.8125rem; line-height:1.7; color:#6b7280;
  padding:14px 0 4px; letter-spacing:.02em;
}
html[lang="ja"] .ja-breadcrumb ol{
  list-style:none; display:flex; flex-wrap:wrap; gap:0; margin:0; padding:0;
}
html[lang="ja"] .ja-breadcrumb li{ display:inline-flex; align-items:center; }
html[lang="ja"] .ja-breadcrumb li+li::before{
  content:"›"; margin:0 .55em; color:#c4c9d4; font-weight:700;
}
html[lang="ja"] .ja-breadcrumb a{ color:#0f6fb3; text-decoration:none; }
html[lang="ja"] .ja-breadcrumb a:hover{ text-decoration:underline; }
html[lang="ja"] .ja-breadcrumb [aria-current="page"]{ color:#374151; font-weight:600; }

/* —— B. 章节编号 + 左侧色条（情報階層） —— */
html[lang="ja"] main, html[lang="ja"] .content-wrap{ counter-reset: ja-sec; }
html[lang="ja"] main .section,
html[lang="ja"] .content-section,
html[lang="ja"] main section.block{
  position:relative; padding-top:1.25rem; margin-top:3.25rem;
}
html[lang="ja"] main .section > h2,
html[lang="ja"] .content-section > h2,
html[lang="ja"] main section.block > h2{
  position:relative; padding-left:.1em; margin-bottom:1.1rem;
}
html[lang="ja"] main .section > h2::before,
html[lang="ja"] .content-section > h2::before,
html[lang="ja"] main section.block > h2::before{
  counter-increment: ja-sec;
  content:counter(ja-sec,decimal-leading-zero);
  display:inline-block; min-width:2.4em; margin-right:.5em;
  color:#0f6fb3; font-weight:700; font-feature-settings:"tnum";
}
html[lang="ja"] main .section > h2,
html[lang="ja"] .content-section > h2{
  border-left:4px solid #0f6fb3; padding-left:.7rem;
}

/* —— C. 内容框（囲みボックス，日企标志性卡片） —— */
html[lang="ja"] .feature-box,
html[lang="ja"] .info-card,
html[lang="ja"] .spec-card,
html[lang="ja"] .highlight-box{
  border:1px solid #e3e7ef; border-radius:10px;
  background:#fafbfc; padding:1.5rem 1.75rem; margin:1.5rem 0;
  box-shadow:0 1px 2px rgba(16,24,40,.04);
}
html[lang="ja"] .feature-box h3,
html[lang="ja"] .info-card h3{ margin-top:0; color:#0f3d6e; }

/* —— D. CTA 按钮（品牌色实底 + 圆角 + 右箭头） —— */
html[lang="ja"] .cta-btn,
html[lang="ja"] a.btn-quote,
html[lang="ja"] .hero-cta a,
html[lang="ja"] .contact-cta a{
  display:inline-flex; align-items:center; gap:.5em;
  background:#0f6fb3; color:#fff !important; font-weight:700;
  padding:.85em 1.7em; border-radius:999px; text-decoration:none;
  letter-spacing:.04em; transition:background .2s,transform .15s;
  border:none; cursor:pointer;
}
html[lang="ja"] .cta-btn::after,
html[lang="ja"] a.btn-quote::after{ content:"▶"; font-size:.7em; }
html[lang="ja"] .cta-btn:hover,
html[lang="ja"] a.btn-quote:hover{ background:#0b568c; transform:translateY(-1px); }

/* —— E. 步骤条（① ② ③ 横向，由 ja_layout.js 包裹 .step-list） —— */
html[lang="ja"] .ja-steps{
  display:flex; flex-wrap:wrap; gap:0; counter-reset:ja-step; margin:2rem 0;
  padding:0; list-style:none;
}
html[lang="ja"] .ja-steps > li{
  counter-increment:ja-step; list-style:none;
  flex:1 1 150px; position:relative; padding:1.1rem 1.2rem 1.1rem 3.2rem;
  border:1px solid #e3e7ef; border-left:none; background:#fff;
}
html[lang="ja"] .ja-steps > li:first-child{ border-left:1px solid #e3e7ef; border-radius:10px 0 0 10px; }
html[lang="ja"] .ja-steps > li:last-child{ border-radius:0 10px 10px 0; }
html[lang="ja"] .ja-steps > li::before{
  content:counter(ja-step,decimal-leading-zero);
  position:absolute; left:1rem; top:50%; transform:translateY(-50%);
  width:1.6rem; height:1.6rem; border-radius:50%;
  background:#0f6fb3; color:#fff; font-weight:700; font-size:.75rem;
  display:flex; align-items:center; justify-content:center;
}
html[lang="ja"] .ja-steps > li strong{ display:block; color:#0f3d6e; margin-bottom:.2em; }

/* —— F. 规格表（斑马纹 + 表头底色 + 数字右对齐） —— */
html[lang="ja"] table.spec,
html[lang="ja"] .spec-table{
  width:100%; border-collapse:collapse; font-size:.9rem; margin:1.5rem 0;
}
html[lang="ja"] table.spec th,
html[lang="ja"] .spec-table th{
  background:#0f3d6e; color:#fff; text-align:left; padding:.7rem 1rem; font-weight:600;
}
html[lang="ja"] table.spec td,
html[lang="ja"] .spec-table td{ padding:.7rem 1rem; border:1px solid #e3e7ef; }
html[lang="ja"] table.spec tbody tr:nth-child(even) td,
html[lang="ja"] .spec-table tbody tr:nth-child(even) td{ background:#f6f8fb; }
html[lang="ja"] table.spec td.num,
html[lang="ja"] .spec-table td.num{ text-align:right; font-feature-settings:"tnum"; }

/* —— G. 返回顶部（右下浮动） —— */
html[lang="ja"] .ja-totop{
  position:fixed; right:1.5rem; bottom:1.5rem; z-index:60;
  width:48px; height:48px; border-radius:50%;
  background:#0f6fb3; color:#fff; border:none; cursor:pointer;
  font-size:1.1rem; box-shadow:0 4px 12px rgba(16,24,40,.18);
  opacity:0; pointer-events:none; transition:opacity .25s;
}
html[lang="ja"] .ja-totop.show{ opacity:1; pointer-events:auto; }

/* —— H. 段落垂直节奏（留白，符合日企分段清晰） —— */
html[lang="ja"] main p,
html[lang="ja"] .content-wrap p{ margin:0 0 1.15rem; text-align:justify; text-justify:inter-character; }
