/**
 * 进制转换 - 工具页专属样式
 * 前缀 jz-，主题：科技蓝（与主站一致）
 * 布局：四行输入框联动（二/八/十/十六），任意一行输入其余实时换算，当前行高亮
 */

/* ---------- 工具区 ---------- */
.jz-tool {
  padding-top: calc(4 * var(--u)); /* 30px */
  padding-bottom: calc(2 * var(--u));
}

.jz-title {
  font-size: calc(4.4 * var(--u)); /* 33px */
  font-weight: 700;
  color: var(--c-text);
  text-align: center;
}

.jz-sub {
  margin-top: calc(1.2 * var(--u)); /* 9px */
  font-size: calc(2.8 * var(--u)); /* 21px */
  color: #7a8699;
  text-align: center;
}

/* ---------- 转换卡片（对齐温度换算：单卡 + 行分割线 + 每行内嵌真输入框） ---------- */
.jz-conv {
  margin-top: calc(3.2 * var(--u)); /* 24px */
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: calc(1.6 * var(--u)); /* 12px */
  box-shadow: 0 calc(1.2 * var(--u)) calc(3.6 * var(--u)) rgba(37, 99, 235, 0.08);
  overflow: hidden;
}

/* 一行 = 左侧进制名 + 右侧输入框（输入框本身带边框，明显可输入） */
.jz-row {
  display: flex;
  align-items: center;
  gap: calc(1.6 * var(--u)); /* 12px */
  padding: calc(1.2 * var(--u)) calc(1.6 * var(--u)); /* 9px 12px */
}

.jz-row + .jz-row {
  border-top: 1.5px solid #f1f5f9;
}

.jz-row-name {
  flex-shrink: 0;
  width: 34%;
  display: flex;
  align-items: center;
  gap: calc(1 * var(--u));
  font-size: calc(2.9 * var(--u)); /* 21.75px */
  color: #475569;
  white-space: nowrap;
}

/* 当前源行：名称变蓝加粗 */
.jz-row.src .jz-row-name {
  color: var(--c-main);
  font-weight: 600;
}

.jz-row-name em {
  font-style: normal;
  font-size: calc(2.2 * var(--u)); /* 16.5px */
  color: #94a3b8;
  background: #eef2f7;
  border-radius: calc(0.6 * var(--u));
  padding: calc(0.3 * var(--u)) calc(0.8 * var(--u));
}

.jz-row.src .jz-row-name em {
  color: var(--c-main);
  background: rgba(37, 99, 235, 0.12);
}

/* 输入区：输入框 + 右侧复制按钮 */
.jz-row-field {
  flex: 1;
  min-width: 0;
  position: relative;
}

.jz-row-input {
  width: 100%;
  box-sizing: border-box;
  border: 1.5px solid #dbe4ef;
  border-radius: calc(1.2 * var(--u)); /* 9px */
  outline: none;
  background: #fafbfd;
  font-size: calc(3.2 * var(--u)); /* 24px */
  font-weight: 600;
  color: var(--c-text);
  padding: calc(1.7 * var(--u)) calc(6 * var(--u)) calc(1.7 * var(--u)) calc(2 * var(--u)); /* 右侧45px留给复制按钮 */
  font-family: Consolas, Menlo, monospace; /* 数字等宽，方便数位 */
  transition: border-color 0.15s, background 0.15s;
}

.jz-row-input:focus {
  border-color: var(--c-main);
  background: #fff;
}

.jz-row-input::placeholder {
  color: #c3cedd;
  font-weight: 400;
}

/* 当前源行：输入框蓝边蓝字 */
.jz-row.src .jz-row-input {
  color: var(--c-main);
  border-color: var(--c-main);
}

/* 复制按钮：输入框内右侧小图标（同温度步进按钮的形态与触控区） */
.jz-copy {
  position: absolute;
  top: 50%;
  right: calc(0.4 * var(--u)); /* 3px */
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(5.4 * var(--u)); /* 40px */
  height: calc(3.4 * var(--u)); /* 25.5px */
  border: none;
  border-radius: calc(0.5 * var(--u));
  background: transparent;
  color: #a8b6c9;
  cursor: pointer;
  padding: 0;
  transition: color 0.15s, background 0.15s;
}

.jz-copy .bi {
  font-size: calc(2.6 * var(--u)); /* 19.5px */
  line-height: 1;
}

.jz-copy:hover {
  color: var(--c-main);
  background: rgba(37, 99, 235, 0.08);
}

.jz-copy.jz-copied {
  color: #16a34a;
  background: rgba(22, 163, 74, 0.08);
}

/* 示例快填 */
.jz-chips {
  margin-top: calc(2.4 * var(--u));
  display: flex;
  flex-wrap: wrap;
  gap: calc(1.2 * var(--u)); /* 9px */
  align-items: center;
}

.jz-chips-label {
  font-size: calc(2.6 * var(--u)); /* 19.5px */
  color: #94a3b8;
}

.jz-chip {
  border: 1px solid #dbe4ef;
  border-radius: calc(3.2 * var(--u)); /* 胶囊 */
  background: #fafbfd;
  color: #475569;
  font-size: calc(2.6 * var(--u)); /* 19.5px */
  font-weight: 500;
  font-family: Consolas, Menlo, monospace;
  padding: calc(0.8 * var(--u)) calc(2.2 * var(--u));
  cursor: pointer;
  transition: border-color 0.15s, color 0.15s, background 0.15s;
}

.jz-chip:hover {
  border-color: var(--c-main);
  color: var(--c-main);
  background: #f5f8ff;
}

.jz-err {
  margin-top: calc(1.6 * var(--u)); /* 12px */
  font-size: calc(2.6 * var(--u)); /* 19.5px */
  color: #e11d48;
}

/* ---------- 换算方法卡片 ---------- */
.jz-card-list {
  margin-top: calc(3.2 * var(--u));
  display: grid;
  gap: calc(1.6 * var(--u));
}

.jz-card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: calc(1.6 * var(--u));
  padding: calc(2.4 * var(--u)) calc(3.2 * var(--u)); /* 18px 24px */
  box-shadow: 0 calc(1.2 * var(--u)) calc(3.6 * var(--u)) rgba(37, 99, 235, 0.08);
}

.jz-card h3 {
  font-size: calc(3 * var(--u)); /* 22.5px */
  font-weight: 600;
  color: var(--c-text);
}

.jz-card h3 .gj-mark {
  font-weight: 600;
}

.jz-note {
  margin-top: calc(0.8 * var(--u));
  font-size: calc(2.6 * var(--u)); /* 19.5px */
  color: #7a8699;
  line-height: 1.7;
}

.jz-note code {
  font-family: Consolas, Menlo, monospace;
  background: #eff6ff;
  border-radius: calc(0.4 * var(--u));
  padding: calc(0.2 * var(--u)) calc(0.6 * var(--u));
  color: var(--c-main);
  font-size: calc(2.4 * var(--u));
}

/* ---------- 进制介绍 ---------- */
.jz-intro {
  margin-top: calc(3.2 * var(--u));
  background: #eff6ff;
  border-radius: calc(1.6 * var(--u));
  padding: calc(3.2 * var(--u)) calc(3.2 * var(--u));
}

.jz-intro p {
  font-size: calc(2.8 * var(--u)); /* 21px */
  line-height: 1.8;
  color: #475569;
}

.jz-intro p + p {
  margin-top: calc(1.6 * var(--u));
}

.jz-intro strong {
  color: var(--c-main);
}
