/* 64 · 儿童牙刷尺寸 · 独立 UI（天青蓝 · 时间轴与规格卡） */

.p64-page {
    --pg-accent: #2277c9;
    --pg-accent-2: #1a5a9a;
    --pg-accent-soft: #e2effb;
    --pg-accent-ink: #ffffff;
}
:root[data-theme="dark"] .p64-page {
    --pg-accent: #7db8ec;
    --pg-accent-2: #5a97cf;
    --pg-accent-soft: rgba(125, 184, 236, .15);
    --pg-accent-ink: #06121f;
}
/* ---------- 首屏 ---------- */
.p64-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, 430px); gap: 38px; align-items: start; padding: 20px 0 8px; }
.p64-lead { padding-top: 10px; }
.pg-hero-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.p64-chip { border-radius: 999px; }
.p64-values { grid-template-columns: repeat(3, minmax(0, 1fr)); }

/* 口腔时间轴 */
.p64-timeline { margin-top: 26px; background: var(--pg-surface); border: 1px solid var(--pg-line); border-radius: var(--pg-r); padding: 16px 22px 20px; box-shadow: var(--pg-shadow); }
.p64-tl-h { font-size: 12px; font-weight: 700; color: var(--pg-muted); letter-spacing: .04em; margin-bottom: 6px; }
.p64-tl-row { display: flex; align-items: stretch; gap: 0; position: relative; }
.p64-tl-row::before { content: ""; position: absolute; left: 6%; right: 6%; top: 17px; height: 2.5px; border-radius: 2px; background: var(--pg-line); }
.p64-tl-dot { flex: 1; background: none; border: 0; cursor: pointer; text-align: center; padding: 0 4px; position: relative; font-family: inherit; }
.p64-tl-dot i { display: block; width: 15px; height: 15px; border-radius: 50%; margin: 10px auto 9px; background: var(--pg-surface); border: 3px solid var(--pg-line); transition: all .18s ease; position: relative; }
.p64-tl-dot b { display: block; font-size: 13.5px; color: var(--pg-ink); }
.p64-tl-dot span { display: block; font-size: 11px; color: var(--pg-muted); margin-top: 2px; }
.p64-tl-dot:hover i { border-color: var(--pg-accent); }
.p64-tl-dot.is-on i { background: var(--pg-accent); border-color: var(--pg-accent); box-shadow: 0 0 0 4px var(--pg-accent-soft); }
.p64-tl-dot.is-on b { color: var(--pg-accent); }
/* 下次更换条 */
.p64-next { margin: 4px 0 14px; background: var(--pg-accent-soft); border-radius: var(--pg-r-sm); padding: 12px 15px; }
.p64-next b { display: block; font-size: 14.5px; color: var(--pg-accent); }
.p64-next span { display: block; font-size: 11.5px; color: var(--pg-ink-2); margin-top: 3px; }

/* ---------- 刷头规格卡 ---------- */
.p64-spec { margin-top: 24px; background: var(--pg-surface); border: 1.5px solid var(--pg-line); border-radius: var(--pg-r); box-shadow: var(--pg-shadow); padding: 22px 24px; display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 26px; align-items: center; }
.p64-spec.is-empty { display: none; }
.p64-brush { position: relative; height: 120px; }
.p64-brush-handle { position: absolute; left: 0; bottom: 26px; width: 130px; height: 22px; border-radius: 11px; background: linear-gradient(90deg, var(--pg-accent), var(--pg-accent-2)); }
.p64-brush-neck { position: absolute; left: 128px; bottom: 30px; width: 34px; height: 14px; border-radius: 7px; background: var(--pg-accent-2); transform: rotate(-6deg); }
.p64-brush-head { position: absolute; left: 158px; bottom: 44px; width: 74px; height: 24px; border-radius: 9px; background: var(--pg-accent-2); }
.p64-brush-head::before { content: ""; position: absolute; left: 6px; right: 6px; top: -13px; height: 14px; border-radius: 4px 4px 0 0; background: repeating-linear-gradient(90deg, #fff 0 3px, #dce9f5 3px 5px); }
.p64-brush-head b { position: absolute; left: 8px; top: -46px; font-size: 12.5px; color: var(--pg-accent); white-space: nowrap; }
.p64-brush-head::after { content: ""; position: absolute; left: 8px; top: -32px; width: 0; height: 18px; border-left: 1.5px dashed var(--pg-accent); }
/* 规格小卡 */
.p64-spec-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.p64-spec-item { background: var(--pg-surface-2); border: 1px solid var(--pg-line); border-radius: var(--pg-r-sm); padding: 13px 15px; }
.p64-spec-item em { display: block; font-style: normal; font-size: 11.5px; color: var(--pg-muted); font-weight: 700; letter-spacing: .03em; }
.p64-spec-item b { display: block; font-size: 17px; color: var(--pg-accent); font-family: var(--pg-num); margin-top: 4px; line-height: 1.4; }
.p64-spec-item span { display: block; font-size: 11.5px; color: var(--pg-ink-2); margin-top: 3px; line-height: 1.6; }

/* ---------- 表格 / 信号卡 ---------- */
.p64-signs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 40px; }
.p64-sign-list { margin: 0; padding: 0 0 0 20px; font-size: 13.2px; line-height: 2.05; color: var(--pg-ink-2); }
.p64-table tbody tr.is-cur { background: var(--pg-accent-soft); box-shadow: inset 3px 0 0 var(--pg-accent); }

@media (max-width: 1080px) {
    .p64-hero { grid-template-columns: 1fr; gap: 26px; }
    .p64-spec { grid-template-columns: 1fr; }
    .p64-brush { height: 110px; }
    .p64-signs { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
    .p64-tl-row { flex-wrap: wrap; gap: 10px 0; }
    .p64-tl-row::before { display: none; }
    .p64-tl-dot { flex: 1 1 46%; }
    .p64-spec-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* ===== end pg-64 ===== */
