/* —— 号码测算专属 —— */
.cat-tabs { display:flex; flex-wrap:wrap; gap:8px; }
.cat-tabs a, .cat-tabs button {
  border:1px solid var(--c-line); background:#fff; color:var(--c-ink-2);
  padding:8px 16px; border-radius:var(--radius-pill); font-size:var(--t-sm); transition:.18s;
  text-decoration:none; cursor:pointer; display:inline-block;
}
.cat-tabs a:hover, .cat-tabs button:hover { border-color:var(--c-primary); color:var(--c-primary); }
.cat-tabs a.on, .cat-tabs button.on { background:var(--c-primary); color:#fff; border-color:var(--c-primary); box-shadow:0 2px 8px rgba(192,57,43,.22); }

.num-input { display:flex; gap:10px; margin-top:var(--sp-4); flex-wrap:wrap; }
.num-input input {
  flex:1; min-width:200px; font:inherit; font-size:18px; letter-spacing:1px;
  padding:13px 16px; border:1.5px solid var(--c-line); border-radius:var(--radius); background:#fff; color:var(--c-ink);
  font-family:var(--font-mono); font-feature-settings:"tnum";
}
.num-input input:focus { outline:0; border-color:var(--c-primary); box-shadow:0 0 0 3px rgba(192,57,43,.12); }
.input-hint { font-size:var(--t-sm); color:var(--c-ink-3); margin-top:10px; }

/* 结果区 */
.result-top { display:flex; gap:var(--sp-5); align-items:center; flex-wrap:wrap; padding-bottom:var(--sp-4); border-bottom:1px solid var(--c-line); }
.verdict {
  flex:none; width:108px; height:108px; border-radius:50%; display:grid; place-content:center; text-align:center;
  border:3px solid; font-family:var(--font-serif); box-shadow:var(--shadow-sm);
}
.verdict b { font-size:30px; font-weight:900; line-height:1; }
.verdict span { font-size:11px; margin-top:4px; font-family:var(--font-sans); }
.verdict.daji   { color:var(--c-luck);  border-color:var(--c-gold-light); background:rgba(201,154,46,.10); }
.verdict.ji     { color:var(--c-yi);    border-color:rgba(46,125,50,.35); background:rgba(46,125,50,.08); }
.verdict.banji  { color:var(--c-gold);  border-color:rgba(184,134,11,.35); background:rgba(184,134,11,.07); }
.verdict.xiong  { color:var(--c-bad);   border-color:#cfcfcf; background:rgba(107,114,128,.08); }
.verdict.daxiong{ color:var(--c-bad);   border-color:#bdbdbd; background:rgba(107,114,128,.12); }

.result-meta { flex:1; min-width:220px; }
.result-meta .shu { font-family:var(--font-serif); font-size:var(--t-h1); color:var(--c-primary-deep); }
.result-meta .shu .n { font-family:var(--font-mono); color:var(--c-primary); }
.result-stats { display:flex; flex-wrap:wrap; gap:10px 22px; margin-top:10px; font-size:var(--t-sm); color:var(--c-ink-2); }
.result-stats b { color:var(--c-ink); font-family:var(--font-serif); }
.duan { margin-top:var(--sp-4); font-family:var(--font-serif); font-size:16px; color:var(--c-ink); line-height:1.9;
  padding:12px 16px; background:var(--c-primary-soft); border-radius:var(--radius); border-left:3px solid var(--c-primary); }
.detail-p { margin:var(--sp-4) 0 0; font-size:var(--t-sm); color:var(--c-ink-2); line-height:1.9; }
.detail-p h4 { font-size:var(--t-sm); color:var(--c-primary-deep); margin:0 0 6px; }

/* 数字分段展示 */
.seg-row { display:flex; gap:6px; flex-wrap:wrap; margin-top:var(--sp-3); }
.seg { background:#fff; border:1px solid var(--c-line); border-radius:var(--radius-sm); padding:6px 10px; text-align:center; min-width:52px; }
.seg .d { font-family:var(--font-mono); font-size:16px; color:var(--c-ink); }
.seg .r { font-size:10px; margin-top:2px; }
.seg .r.g { color:var(--c-luck); } .seg .r.b { color:var(--c-bad); }

/* 分享条样式已抽到 app.css 复用 */

@media (max-width:560px){
  .verdict { width:88px; height:88px; } .verdict b { font-size:24px; }
  .result-meta .shu { font-size:var(--t-h2); }
}
