/* ============ zhēri style ============ */
:root{
  --c-bg:#f6efe3;
  --c-card:#fffcf5;
  --c-ink:#3a2e1f;
  --c-ink2:#6b5a42;
  --c-line:#e2d4bb;
  --c-gold:#a0713c;
  --c-red:#b23a2e;
  --c-red2:#c4543f;
  --c-ji:#0f7a50;
  --c-ciji:#c8891f;
  --c-xiong:#b23a2e;
  --c-def:#5a5a5a;
  --shadow:0 2px 10px rgba(90,60,20,.08);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  font-family:"Songti SC","SimSun","Noto Serif SC","Microsoft YaHei",serif;
  background:
    radial-gradient(1200px 500px at 85% -10%, rgba(160,113,60,.14), transparent 60%),
    radial-gradient(900px 500px at -10% 110%, rgba(160,113,60,.10), transparent 60%),
    var(--c-bg);
  color:var(--c-ink);
  min-height:100vh;
}
button{font-family:inherit}

/* ---------- top bar ---------- */
.topbar{
  display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;
  padding:12px 18px;background:linear-gradient(180deg,#43341f,#2e2416);
  color:#f3e7cd;position:sticky;top:0;z-index:20;box-shadow:0 2px 12px rgba(0,0,0,.25);
}
.brand-title{font-size:24px;letter-spacing:4px;color:#e9c98a;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.brand-sub{font-size:12px;color:#cbb47f;letter-spacing:2px;margin-top:2px}
.ctl{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.btn{
  border:1px solid #8a6d3b;background:rgba(255,255,255,.08);color:#f0e2c2;
  padding:6px 12px;border-radius:6px;cursor:pointer;font-size:14px;transition:.15s;
}
.btn:hover{background:rgba(233,201,138,.25)}
.btn.ghost{background:transparent}
#monthInput{
  background:#fdf6e7;color:#3a2e1f;border:1px solid #8a6d3b;border-radius:6px;
  padding:5px 6px;font-size:14px;font-family:inherit;
}
.range-note{font-size:12px;color:#b7a47e}

/* ---------- layout ---------- */
.layout{
  display:grid;grid-template-columns:minmax(380px,540px) 1fr;gap:14px;
  padding:14px;max-width:1560px;margin:0 auto;align-items:start;
}
@media (max-width:1100px){ .layout{grid-template-columns:1fr} }

.cal-pane,.detail-pane{
  background:var(--c-card);border:1px solid var(--c-line);border-radius:10px;
  box-shadow:var(--shadow);
}
.cal-pane{padding:12px}
.month-title{
  text-align:center;font-size:21px;letter-spacing:2px;padding:6px 0 10px;color:#7a5420;
  border-bottom:1px dashed var(--c-line);margin-bottom:8px;
}
.week-row,.cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.wd{text-align:center;font-size:13px;color:var(--c-gold);padding:3px 0}
.wd:nth-child(1){color:var(--c-red)}
.cal-grid .cell:nth-child(7n+1) .solar{color:var(--c-red)}
.cal-grid .cell:nth-child(7n) .solar{color:#2c5c8f}
.cal-grid .cell:nth-child(7n+1).off .solar,
.cal-grid .cell:nth-child(7n).off .solar{color:#a49a86}
.cell{
  min-height:78px;border:1px solid #efe5d0;border-radius:6px;padding:4px 5px;cursor:pointer;
  transition:.12s;position:relative;overflow:hidden;
}
.cell:hover{border-color:var(--c-gold);background:#fbf3e0}
.cell.selected{border:2px solid var(--c-red2);background:#fdeee2}
.cell.off{background:#f3ecdd;color:#aaa}
.cell .solar{font-size:19px;font-weight:700}
.cell .lunar{font-size:11px;color:#7d6c52}
.cell .gz{font-size:10px;color:#a08a5f}
.cell .tag{font-size:10px;line-height:1.25;margin-top:1px}
.cell .tag .jq{color:var(--c-red2);font-weight:700}
.cell .tag .fd{color:#9c7a9c}
.cell .flag{position:absolute;top:4px;right:6px;width:8px;height:8px;border-radius:50%}
.flag.lv-g{background:var(--c-ji);box-shadow:0 0 0 2px rgba(15,122,80,.18)}
.flag.lv-p{background:#d8a94a}
.flag.lv-b{background:var(--c-xiong)}
.cell .tds{position:absolute;bottom:3px;left:5px;font-size:10px;color:#a087c9}
.legend{display:flex;gap:16px;align-items:center;margin-top:8px;font-size:12px;color:var(--c-ink2);flex-wrap:wrap}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px}
.dot.g{background:var(--c-ji)} .dot.p{background:#d8a94a} .dot.b{background:var(--c-xiong)}
.hint{margin-left:auto;color:#9c8760;font-size:11px}

/* ---------- detail ---------- */
.detail-pane{padding:0;overflow:hidden}
.detail-empty{padding:70px 20px;text-align:center;color:var(--c-ink2)}
.detail-empty p:first-child{font-size:20px;margin-bottom:8px}
.dim{font-size:12px;line-height:1.9;color:#a08a5f}
.detail-body{display:flex;flex-direction:column;max-height:calc(100vh - 130px)}
.detail-head{
  padding:12px 16px 10px;background:linear-gradient(180deg,#fbf1dc,#f6e8ca);
  border-bottom:1px solid var(--c-line);
}
.dh-main{font-size:22px;font-weight:700;letter-spacing:1px;color:#5b3d14}
.dh-main .lunar-sub{font-size:14px;color:#8a6d3b;font-weight:400;letter-spacing:0;margin-left:6px}
.dh-tags{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;font-size:12px}
.pill{
  border:1px solid #d9c79f;background:#fff9ea;border-radius:999px;padding:2px 9px;color:#6b4a14;
}
.pill.red{color:#fff;background:var(--c-red);border-color:var(--c-red)}
.pill.green{color:#fff;background:var(--c-ji);border-color:var(--c-ji)}
.pill.gold{color:#fff;background:var(--c-gold);border-color:var(--c-gold)}

.tabs{display:flex;border-bottom:1px solid var(--c-line);background:#fffaf0;flex-wrap:wrap}
.tab{
  border:none;background:none;padding:9px 15px;cursor:pointer;font-size:14px;
  color:#7a6a4f;border-bottom:3px solid transparent;
}
.tab:hover{color:#5b3d14;background:#f7ecd6}
.tab.on{color:#a43a20;font-weight:700;border-bottom-color:var(--c-red2)}

.tab-body{padding:14px 16px;overflow-y:auto;min-height:280px}
.tab-body::-webkit-scrollbar{width:8px}
.tab-body::-webkit-scrollbar-thumb{background:#d6c3a0;border-radius:4px}

/* info grid */
.kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:7px}
.kv .k{font-size:12px;color:#98713a;margin-bottom:1px}
.kv .v{font-size:15px}
.kv-item{background:#fdf6e7;border:1px solid #efe3c8;border-radius:8px;padding:6px 10px}
.kv-item.full{grid-column:1/-1}
.kv-item .v .big{font-size:18px;color:#a02816;font-weight:700}
.sep{height:1px;background:var(--c-line);margin:14px 0}
.h2{font-size:15px;color:#7a5420;border-left:4px solid var(--c-gold);padding-left:8px;margin:12px 0 8px;letter-spacing:1px}
.cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;font-size:13px;line-height:1.8}
.taglist span{display:inline-block;margin:0 4px 4px 0}

/* yi / ji */
.yi{color:var(--c-ji)} .xiong{color:var(--c-xiong)}

/* zi bai four disks */
.zibai-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:18px}
.zibai-title{font-size:16px;font-weight:700;margin-bottom:6px}
.zibai-title small{font-weight:400;font-size:12px;color:#8a7a5a}
.pan{
  background:#fdf7e9;border:1px solid #e9dcc0;border-radius:10px;padding:12px;
}
.pan-board{position:relative;width:160px;height:160px;margin:8px auto}
.pal{
  position:absolute;width:52px;height:52px;border-radius:8px;
  background:#fff9ea;border:1px solid #dccfae;display:flex;flex-direction:column;
  align-items:center;justify-content:center;
}
.pal .pn{font-size:13px;color:#a07a2f}
.pal .st{font-size:18px;font-weight:800;line-height:1}
.pal.pal5{background:#f6e5c0}
.pal .at{font-size:9px;color:#9c8760}
.pan-center{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}
.pan-desc{font-size:12px;color:#7d6c52;margin-top:6px;line-height:1.7}

/* sun */
.suncard{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.sunshan{font-size:44px;color:#a02816;font-weight:800;text-align:center;padding:10px}
.meter{background:#efe3c8;border-radius:999px;height:8px;overflow:hidden;margin:8px 0}
.meter i{display:block;height:100%;background:linear-gradient(90deg,#e0a33a,#b23a2e)}

/* qimen board */
.qm-head{font-size:14px;line-height:1.9;background:#fdf6e7;border:1px solid #efe3c8;border-radius:8px;padding:8px 12px;margin-bottom:10px}
.qm-head b{color:#a02816}
.qm-layout{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
@media (max-width:1200px){.qm-layout{grid-template-columns:1fr}}
.qm-board{position:relative;width:300px;height:300px}
.qcell{position:absolute;width:96px;height:96px;background:#fff9ea;border:1px solid #dccfae;border-radius:8px;text-align:center;padding-top:4px}
.qcell .qdi{font-size:13px;color:#a02816;font-weight:700}
.qcell .qsky{font-size:12px}
.qcell .qstar{font-size:15px;font-weight:700;color:#2c5c8f}
.qcell .qdoor{font-size:15px;font-weight:700;color:#8a4d2a}
.qcell .qdiv{font-size:11px;color:#7a5a9c}
.qcell.qc5{background:#f6e5c0}
.qm-side{font-size:13px;line-height:1.9;color:#4f4230}
.qm-side b{color:#7a5420}
.luck{color:var(--c-ji);font-weight:700}
.xiu{color:var(--c-xiong)}
.hour-table{width:100%;border-collapse:collapse;font-size:13px}
.hour-table th{background:#f6e8ca;color:#6b4a14;padding:6px 4px;border:1px solid var(--c-line);position:sticky;top:0}
.hour-table td{border:1px solid #e9dcc0;padding:5px 4px;text-align:center}
.hour-table tr.on td{background:#fdeee2}
.qh-chips{display:flex;flex-wrap:wrap;gap:5px;margin:2px 0 10px}
.qh-chip{font-size:12px;color:#6b4a14;background:#fff9ea;border:1px solid #e6d7ba;border-radius:8px;padding:2px 8px;line-height:1.7;cursor:pointer;user-select:none}
.qh-chip small{font-size:10px;color:#a49a86;font-weight:400;margin-left:2px}
.qh-chip.on{background:#a02816;border-color:#a02816;color:#fff;font-weight:700}
.qh-chip.on small{color:#ffe0cf}
.hour-table tr:hover td{background:#fbf3e0}
.lv-ji{color:var(--c-ji);font-weight:700}
.lv-ping{color:#b07810}
.lv-xiong{color:var(--c-xiong);font-weight:700}

/* ---------- 六十甲子 · 三日飞宫（洛书九宫排布） ---------- */
.fg-note{font-size:11px;color:#a49a86;line-height:1.7;margin-bottom:8px}
.fg-note b{color:#8a6d3b}
.fg-luo{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto;gap:4px;max-width:580px;margin:4px auto}
.fg-cell{border:1px solid #ead9b5;border-radius:8px;background:#fffdf5;padding:5px 6px}
.fg-cell.cur{border-color:#a02816;box-shadow:0 0 0 1px #a02816 inset;background:#fff6ef}
.fg-c5{background:#f6e5c0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}
.fg-c5 .fg-ch{border-bottom:none;margin-bottom:0}
.fg-c5t{font-size:13px;color:#b3955a;font-weight:700;letter-spacing:1px}
.fg-ch{font-size:13px;color:#6b4a14;font-weight:800;text-align:center;border-bottom:1px dashed #e2cf9f;padding-bottom:3px;margin-bottom:3px;line-height:1.4}
.fg-ch small{display:block;font-weight:400;font-size:10px;color:#a49a86;line-height:1.6}
.fg-door{font-size:16px;font-weight:800;text-align:center;line-height:1.4;letter-spacing:2px;margin:1px 0 2px}
.fg-door .dq-origin{font-size:9px;font-weight:700;letter-spacing:0}
.fg-g{
  display:block;margin:3px 0;font-size:12px;color:#6b4a14;text-align:center;
  background:#fff9ea;border:1px solid #e6d7ba;border-radius:999px;padding:1px 6px;line-height:1.8;white-space:nowrap;
}
.fg-g.on{background:#a02816;border-color:#a02816;color:#fff;font-weight:700}
.fg-luo .fg-g{font-size:11.5px}

/* 日奇门九宫盘（转盘八门） */
.dq-head{font-size:11px;color:#a07a2f;font-weight:700;line-height:1.5;white-space:nowrap}
.dq-head small{font-size:9px;color:#b8a684;font-weight:400;margin-left:2px}
.dq-door{font-size:22px;font-weight:800;line-height:1.3;letter-spacing:1px;margin-top:2px}
.dq-j{color:var(--c-ji)}
.dq-p{color:#b07810}
.dq-x{color:var(--c-xiong)}
.dq-tag{font-size:10px;color:#9c8760;line-height:1.7}
.dq-origin{color:#a02816;font-weight:700}
.dq-gz{font-size:14px;font-weight:800;color:#a02816;letter-spacing:1px;line-height:1.5;margin-top:4px}

/* notes */
.foot{max-width:1500px;margin:0 auto;padding:8px 20px 20px;color:#9c8760;font-size:11px;text-align:center}
.note{font-size:11px;color:#a49a86;line-height:1.7;margin-top:8px}
.rate-big{font-size:20px;font-weight:800}

/* ---------- almanac 老黄历 ---------- */
.alm-head{background:linear-gradient(180deg,#f7e9cd,#fdf6e7);border:1px solid #e6d3ac;border-radius:10px;padding:12px 14px;text-align:center;margin-bottom:4px}
.alm-gz{font-size:24px;font-weight:800;letter-spacing:2px;color:#a02816}
.alm-sub{font-size:13px;color:#6b5a42;margin-top:5px;line-height:1.8}
.pzbj{display:flex;gap:8px;flex-wrap:wrap}
.pz{background:#fbf1dc;border:1px solid #e2cf9f;color:#5b3d14;border-radius:8px;padding:8px 12px;font-size:14px;flex:1 1 250px;line-height:1.6}
.alm-yj{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}
.yj-box{border-radius:10px;padding:10px 14px;border:1px solid var(--c-line)}
.yi-box{background:#f2fbef;border-color:#c2e0cb}
.xiong-box{background:#fdf1ea;border-color:#eecab9}
.yj-title{font-size:22px;font-weight:800;letter-spacing:6px;margin-bottom:8px}
.yj-tags{display:flex;flex-wrap:wrap;gap:5px}
.alm-chip{display:inline-block;background:#fff;border:1px solid #e3d5b6;color:#6b4a14;border-radius:999px;padding:1px 8px;font-size:12px;line-height:1.8}
.alm-chip.empty{color:#b6a37d;background:#f7f1e2}
.alm-chip.yi{background:#eef8ec;border-color:#bfe0c8;color:#0f6b45}
.alm-chip.xiong{background:#fbeae3;border-color:#eec9b6;color:#a03024}

/* ---------- dress 五行穿衣 ---------- */
.dress-hero{display:flex;align-items:center;gap:16px;border:1px solid #efe3c8;border-radius:12px;padding:14px 16px;margin-bottom:10px}
.dress-wx{width:74px;height:74px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:800;box-shadow:inset 0 0 0 4px rgba(255,255,255,.35),0 2px 8px rgba(0,0,0,.15);flex:none}
.dress-hero-info{flex:1;min-width:200px}
.dress-title{font-size:19px;font-weight:700;letter-spacing:1px;color:#5b3d14}
.dress-title b{font-size:26px}
.dress-title .dim{font-size:12px;color:#a49a86;font-weight:400}
.dress-sub{font-size:12px;color:#8a6d3b;margin-top:4px;line-height:1.7}
.dress-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}
.dress-tag{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:2px 13px;font-size:14px;font-weight:700;letter-spacing:1px;line-height:2}
.dress-tag i{width:11px;height:11px;border-radius:50%;display:inline-block;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.dress-tag-dj{color:#fff;box-shadow:0 3px 10px rgba(160,48,36,.32)}
.dress-tag-cj{background:#fff;box-shadow:0 2px 6px rgba(160,113,60,.18)}
/* —— 五行穿衣主版面：大吉/次吉大卡 + 其余小卡 —— */
.dress-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-bottom:10px}
.dress-card{background:#fdf6e7;border:1px solid #efe3c8;border-radius:10px;padding:10px 12px}
.pick-card{position:relative;overflow:hidden;padding:12px 14px 13px}
.pick-card::after{content:"";position:absolute;right:-36px;top:-36px;width:136px;height:136px;border-radius:50%;background:var(--wx);opacity:.10;pointer-events:none}
.pick-card .dc-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.pc-badge{flex:none;font-size:11px;font-weight:800;letter-spacing:2px;color:#fff;border-radius:999px;padding:2px 10px}
.rank-dj .pc-badge{background:linear-gradient(135deg,#d05a3a,#a02816);box-shadow:0 2px 7px rgba(160,48,36,.35)}
.rank-ciji .pc-badge{background:linear-gradient(135deg,#d8a94a,#a0713c);box-shadow:0 2px 7px rgba(160,113,60,.3)}
.pc-title{font-size:18px;font-weight:800;letter-spacing:1px;color:#5b3d14;margin-right:auto}
.pick-card .dc-wx{width:48px;height:48px;border-radius:50%;font-size:24px;font-weight:800;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:inset 0 0 0 3px rgba(255,255,255,.45),0 3px 9px rgba(0,0,0,.18);flex:none}
.pc-colors{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 9px}
.pc-chip{background:#fff;border:1px solid;border-radius:999px;padding:1px 12px;font-size:13.5px;font-weight:700;line-height:1.9}
.pick-card .dress-band{display:flex;gap:6px}
.pick-card .dress-swatch{flex:1;height:38px;border-radius:7px;border:1px solid rgba(0,0,0,.06)}
.dc-p{font-size:12px;color:#8a6d3b;margin:9px 0 0;line-height:1.7}
.rank-dj{background:linear-gradient(155deg,#fffef9,#fdeede);border-color:#eccab4;box-shadow:0 5px 14px rgba(180,80,40,.10)}
.rank-ciji{background:linear-gradient(155deg,#fffef9,#f8efd7)}
.dress-others{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-bottom:4px}
.other-card{display:flex;flex-direction:column;gap:7px;padding:9px 11px;background:#fffaf0}
.other-card .dc-head{display:flex;align-items:center;justify-content:space-between;gap:6px}
.other-card .dc-t{font-size:13px;font-weight:800;color:#6b5a42;letter-spacing:1px}
.other-card .dc-wx{color:#fff;font-weight:700;border-radius:5px;padding:0 9px;font-size:13px;line-height:1.9}
.other-card .dress-band{display:flex;gap:4px}
.other-card .dress-swatch{flex:1;height:15px;border-radius:4px;border:1px solid rgba(0,0,0,.05)}
.other-card .dress-names{font-size:10.5px;color:#a49a86;text-align:center;letter-spacing:1px}
.oc-p{font-size:11px;color:#a03024;text-align:center;letter-spacing:1px;font-weight:700;margin-top:-2px}
.o-ping{background:#fffaf0}
.o-ping .oc-p{color:#a0865c}
.o-keep{background:#fffdf4}
.o-keep .oc-p{color:#b0822c}
.o-bad{background:#fdf1ea;border-color:#eecab9}
.dress-dir-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin-bottom:4px}
.dir-card{background:#fdf6e7;border:1px solid #efe3c8;border-top:3px solid var(--c-gold);border-radius:10px;padding:9px 10px;text-align:center}
.dir-gui{border-top-color:#a02816}
.dir-name{font-size:13px;font-weight:700;color:#5b3d14;letter-spacing:2px}
.dir-val{font-size:24px;font-weight:800;color:#a02816;margin:4px 0 2px}
.dir-sub{font-size:11px;color:#a49a86;line-height:1.6}
.sx-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-bottom:4px}
.sx-box{border-radius:10px;padding:10px 12px;border:1px solid var(--c-line)}
.sx-box.sx-good{background:#f2fbef;border-color:#c2e0cb}
.sx-box.sx-bad{background:#fdf1ea;border-color:#eecab9}
.sx-title{font-weight:800;font-size:16px;letter-spacing:1px;color:#5b3d14}
.sx-box.sx-good .sx-title{color:#0f6b45}
.sx-box.sx-bad .sx-title{color:#a03024}
.sx-tip{font-size:11px;color:#a49a86;margin:2px 0 7px}
.sx-chips{display:flex;flex-wrap:wrap;gap:6px}
.sx-chip{border-radius:999px;padding:3px 12px;font-size:14px;font-weight:700;line-height:1.8}
.sx-chip.g{background:#eef8ec;border:1px solid #bfe0c8;color:#0f6b45}
.sx-chip.b{background:#fbeae3;border:1px solid #eec9b6;color:#a03024}
/* ============ 在线排盘 · 玄空飞星 ============ */
.xk{display:flex;flex-direction:column;gap:12px}
.xk-bar{display:flex;flex-direction:column;gap:10px;background:var(--c-card);border:1px solid var(--c-line);border-radius:10px;padding:10px 12px}
.xk-field{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.xk-fn{font-size:13px;color:#8a6d3b;letter-spacing:2px;font-weight:700;margin-right:4px}
.xk-yun{min-width:38px;padding:4px 6px;border:1px solid #cfa95f;background:#fdf6e7;color:#6b4a12;border-radius:6px;cursor:pointer;font-size:14px}
.xk-yun.on{background:#7c5216;color:#f5e6c4;border-color:#7c5216;font-weight:700}
.xk-tip{font-size:12px;color:#a49a86;margin-left:6px}
.xk-sel{font-size:14px;padding:4px 6px;border:1px solid #cfa95f;border-radius:6px;background:#fdf6e7;color:#3a2e1f;max-width:250px}
.xk-arr{color:#b08a4c;margin:0 6px;font-size:16px}
.xk-fac{color:#a03024;font-size:15px}
.xk-swap{padding:4px 10px;border:1px solid #cfa95f;background:transparent;color:#6b4a12;border-radius:6px;cursor:pointer}
.xk-mode{display:flex;align-items:center;flex-wrap:wrap;gap:8px;background:var(--c-card);border:1px solid var(--c-line);border-radius:10px;padding:8px 12px}
.xk-mode-lab{font-size:12px;color:#8a6d3b;letter-spacing:2px;font-weight:700;margin-right:2px}
.xk-mode-btn{padding:4px 12px;border:1px solid #cfa95f;background:#fdf6e7;color:#6b4a12;border-radius:999px;cursor:pointer;font-size:13px}
.xk-mode-btn:hover{border-color:#7c5216}
.xk-mode-btn.on{background:#7c5216;color:#f5e6c4;border-color:#7c5216;font-weight:700}
.xk-mode-tip{font-size:11px;color:#a49a86;margin-left:4px}
.xk-main{display:grid;gap:12px;align-items:start}
.xk-duo{min-width:0}
.xk-row{display:grid;grid-template-columns:minmax(340px,400px) 314px;gap:12px;align-items:stretch;justify-content:center}
.xk-pane,.xk-side{background:var(--c-card);border:1px solid var(--c-line);border-radius:10px;padding:10px 12px}
.xk-pane{min-width:0;max-width:400px}
.xk-side{display:flex;flex-direction:column;min-width:0}
.xk-side .xk-ptitle{width:100%}
.xk-side-mid{flex:1;display:flex;align-items:center;justify-content:center;min-height:292px;padding:8px 0}
.xk-judge{min-width:0;display:flex}
.xk-judge .xk-verdict{margin-top:0;flex:1}
.xk-ptitle{font-size:14px;font-weight:800;color:#5b3d14;letter-spacing:1px;margin-bottom:6px}
.xk-ptitle small{color:#a49a86;font-weight:400;font-size:12px}
.xk-board{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:6px}
.xk-cell{position:relative;border:1px solid #dfcda8;border-radius:8px;background:#fbf3e0;padding:5px 7px;display:flex;flex-direction:column;gap:2px;min-height:98px}
.xk-cell.is-sit{border:2px solid #7c5216;background:#f6e3bd}
.xk-cell.is-fac{border:2px solid #a03024;background:#f9e6dc}
.xk-cn{font-size:11px;color:#9a8a6e;letter-spacing:1px}
.xk-hit{position:absolute;top:4px;right:6px;font-size:10px;padding:0 4px;border-radius:4px}
.xk-hit.sh{background:#7c5216;color:#fff}
.xk-hit.fa{background:#a03024;color:#fff}
.xk-sfrow{display:flex;align-items:flex-end;justify-content:space-between;gap:6px;margin:3px 0 5px}
.xk-sf{display:inline-flex;align-items:baseline;gap:3px;min-width:0}
.xk-sf i{color:#a49a86;font-style:normal;font-size:11px}
.xk-sf b{font-size:21px;line-height:1;font-weight:800}
.xk-yunrow{display:flex;align-items:center;gap:4px;font-size:11px;margin-top:auto;border-top:1px dashed #e2d4bb;padding-top:3px}
.xk-yunrow i{color:#a49a86;font-style:normal;width:12px}
.xk-yunrow b{font-size:14px;line-height:1;font-weight:800}
.xk-yunrow em{font-size:10px;color:#8a6d3b;font-style:normal}
.xk-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:11px;color:#6b5a42;margin-top:8px}
.xk-ldot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:3px;vertical-align:-1px}
.xk-compass{--rk:111px;--tr:143px;--gr:66px;--dr:128px;--df:8px;position:relative;width:290px;height:290px;margin:4px auto;border-radius:50%;border:1px solid #d8c298;background:radial-gradient(circle,#fdf6e7 55%,#f3e7c9 100%);box-shadow:inset 0 0 0 8px #f6efdf, inset 0 0 0 9px #e3d2ac}
.xk-compass::before,.xk-compass::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none}
.xk-compass::before{width:calc(var(--gr) * 2);height:calc(var(--gr) * 2);border:1px dashed rgba(183,140,82,.5)}
.xk-compass::after{width:calc(var(--tr) * 2);height:calc(var(--tr) * 2);border:1px solid rgba(183,140,82,.35)}
.xk-tick{--l:3px;--w:1px;position:absolute;left:50%;top:50%;width:0;height:0;color:#b99355;transform:rotate(var(--a)) translateY(calc(var(--tr) * -1));pointer-events:none}
.xk-tick i{position:absolute;top:0;left:calc(var(--w) * -0.5);width:var(--w);height:var(--l);background:currentColor;border-radius:1px;opacity:.9}
.xk-tick.mid{--l:6px;--w:1.4px;color:#a87d35}
.xk-tick.major{--l:9px;--w:2px;color:#7c5216}
.xk-deg{position:absolute;left:50%;top:50%;width:0;height:0;transform:rotate(var(--a)) translateY(calc(var(--dr) * -1));pointer-events:none}
.xk-deg b{position:absolute;left:0;top:0;transform:translate(-50%,-50%) rotate(calc(var(--a) * -1));font-size:var(--df,9px);font-weight:600;color:#9a7a45;white-space:nowrap;line-height:1;font-variant-numeric:tabular-nums}
.xk-pin{position:absolute;left:50%;top:50%;width:0;height:0;transform:rotate(var(--a)) translateY(calc(var(--rk) * -1))}
.xk-mtn{position:absolute;left:0;top:0;width:24px;height:24px;padding:0;border:1px solid #c9a45f;border-radius:50%;background:#fffaf0;color:#5b3d14;font-size:12px;line-height:1;cursor:pointer;transform:translate(-50%,-50%) rotate(calc(var(--a) * -1));font-family:inherit}
.xk-mtn:hover{border-color:#7c5216;background:#f0dfb8}
.xk-mtn.on{background:#7c5216;color:#fff6e3;border-color:#7c5216;font-weight:800}
.xk-mtn.fac{background:#a03024;color:#fff;border-color:#a03024}
.xk-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:56px;height:56px;border:1px solid #c9a45f;border-radius:50%;background:#7c5216;color:#f6e7c6;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;pointer-events:none}
.xk-core b{font-size:22px}
.xk-core small{font-size:10px;letter-spacing:2px}
.xk-compass-hint{font-size:11px;color:#a49a86;text-align:center;line-height:1.6}
.xk-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:8px}
.xk-card{background:var(--c-card);border:1px solid var(--c-line);border-radius:10px;padding:8px 10px}
.xk-ck{font-size:12px;color:#8a6d3b;letter-spacing:2px;font-weight:700;margin-bottom:6px}
.xk-cv{font-size:14px;color:#3a2e1f;font-weight:700}
.xk-cs{font-size:12px;color:#8a6d3b;margin-top:4px;line-height:1.6}
.xk-verdict{margin-top:8px;border-radius:10px;padding:8px 12px;border:1px solid var(--c-line)}
.xk-vt{font-size:14px;font-weight:800;letter-spacing:2px;margin-bottom:3px}
.xk-vd{font-size:12px;line-height:1.8;color:#3a2e1f}
.xk-verdict.xk-v-g{background:#eef7ef;border-color:#bcdcc5}
.xk-verdict.xk-v-g .xk-vt{color:#0f6b45}
.xk-verdict.xk-v-w{background:#fdf6e7;border-color:#e2cf9f}
.xk-verdict.xk-v-w .xk-vt{color:#96600f}
.xk-verdict.xk-v-b{background:#fdeeeb;border-color:#e8b9ae}
.xk-verdict.xk-v-b .xk-vt{color:#a02816}
.xk-verdict.xk-v-n .xk-vt{color:#6b5a42}
.xk-warn{margin-top:8px;background:#fbf0da;border:1px solid #ecd9a8;color:#8a6416;font-size:12px;line-height:1.8;border-radius:10px;padding:6px 10px}
@media (max-width:900px){
  .xk-row{grid-template-columns:1fr;justify-content:stretch}
  .xk-row .xk-pane{justify-self:center;width:100%;max-width:440px}
}
@media (max-width:480px){
  .xk-compass{--rk:88px;--tr:116px;--gr:64px;--dr:105px;--df:7px;width:236px;height:236px}
  .xk-mtn{width:20px;height:20px;font-size:10px}
  .xk-tick{--l:2px}
  .xk-tick.mid{--l:5px}
  .xk-tick.major{--l:8px}
  .xk-side-mid{min-height:250px}
  .xk-board{grid-template-columns:repeat(3,1fr);gap:4px}
  .xk-cell{min-height:80px;padding:4px 6px}
  .xk-sf b{font-size:18px}
  .xk-pane,.xk-side{padding:8px 10px}
}

/* ============ 杨八篇 · 经文阅读 ============ */
.yang{display:flex;flex-direction:column;gap:10px}
.yang-bar{display:flex;flex-wrap:wrap;gap:6px;position:sticky;top:4px;z-index:3;background:#fdf6e7;border:1px solid #e3d2ac;border-radius:999px;padding:4px}
.yj-tab{border:1px solid #d3bd8e;background:#fffaf0;color:#6b4a14;border-radius:999px;padding:4px 13px;font-size:13px;cursor:pointer;white-space:nowrap}
.yj-tab:hover{border-color:#7c5216;background:#f0dfb8}
.yj-tab.on{background:#7c5216;border-color:#7c5216;color:#f5e6c4;font-weight:700}
.yj-view{display:none}
.yj-view.on{display:block}
.yj-head{border-bottom:1px dashed #dcc9a5;padding-bottom:8px;margin-bottom:10px}
.yj-head b{font-size:21px;color:#5b3d14;letter-spacing:3px}
.yj-aka{font-size:12px;color:#a03024;margin-left:6px}
.yj-src{font-size:12px;color:#a49a86;margin-top:4px}
.yj-ch{margin-bottom:14px}
.yj-ch h4{font-size:15px;color:#7a5420;letter-spacing:2px;margin:14px 0 6px;padding-left:8px;border-left:3px solid #c9a45f}
.yj-txt{font-family:"Songti SC","STSong","Noto Serif SC","Source Han Serif SC",serif;font-size:17px;line-height:2.1;color:#3c3423;white-space:pre-wrap}
@media (max-width:480px){
  .yang-bar{top:2px}
  .yj-tab{font-size:12px;padding:3px 10px}
  .yj-txt{font-size:16px}
}

/* ---------- 手机号码测评（数字能量八星） ---------- */
.phone-wrap{padding:4px 2px}
.phone-intro{font-size:13px;color:#8a7a5a;line-height:1.8;margin-bottom:14px}
.phone-form{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}
.phone-form input{
  width:240px;max-width:100%;font-family:inherit;font-size:16px;letter-spacing:1px;color:var(--c-ink);
  background:#fdf6e7;border:1px solid #d9c79f;border-radius:8px;padding:9px 12px;
}
.phone-form input:focus{outline:none;border-color:var(--c-gold);box-shadow:0 0 0 3px rgba(160,113,60,.12)}
.phone-form select{
  font-family:inherit;font-size:14px;color:var(--c-ink);
  background:#fdf6e7;border:1px solid #d9c79f;border-radius:8px;padding:9px 10px;
}
.phone-form select:focus{outline:none;border-color:var(--c-gold)}
.ph-err{color:var(--c-red);font-size:14px}
.ph-result{margin-top:6px}
.ph-score{display:flex;align-items:baseline;gap:8px;padding:14px;background:#fdf6e7;border:1px solid #efe3c8;border-radius:10px;margin-bottom:12px}
.ph-num{font-size:40px;font-weight:800;color:var(--c-red);line-height:1}
.ph-unit{font-size:14px;color:#8a7a5a}
.ph-grade{font-size:16px;font-weight:700;color:#7a5420;margin-left:6px;letter-spacing:1px}
.ph-stats{font-size:13px;color:#6b5a42;margin-bottom:12px}
.ph-pairs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.ph-pair{
  font-size:13px;padding:5px 10px;border-radius:999px;border:1px solid #d9c79f;background:#fff9ea;color:#6b4a14;
}
.ph-pair.ph-ji{background:#eaf6ef;border-color:#bfe2cf;color:#0f7a50}
.ph-pair.ph-xiong{background:#fbeae6;border-color:#eec8bf;color:#b23a2e}
.ph-pair.ph-zhong{background:#f7f0dd;border-color:#e2d4bb;color:#8a6d3b}
.ph-pair.ph-bian{background:#f1efe9;border-color:#ddd6c8;color:#9a9284}
.ph-summary{font-size:14px;line-height:1.9;color:#5b4a2f;background:#fbf3e0;border-left:3px solid var(--c-gold);padding:10px 14px;border-radius:6px;margin-bottom:12px}
.ph-special{
  margin:0 0 10px;padding:10px 14px;border-radius:8px;font-size:14px;font-weight:700;letter-spacing:1px;
  color:#a02816;background:linear-gradient(135deg,#fff3d6,#ffe6bd);border:1px solid #e8c26a;
}
.ph-special.mid{color:#7a6a4f;background:#f6f1e6;border-color:#d9c79f;font-weight:600}
.ph-qr{
  display:flex;align-items:flex-start;gap:20px;justify-content:center;flex-wrap:wrap;
  margin:0 0 12px;padding:14px;border:1px dashed #e0c98f;border-radius:10px;background:#fffaf0;
}
.ph-qr-item{display:flex;flex-direction:column;align-items:center;gap:8px}
.ph-qr-box{
  position:relative;width:112px;height:112px;border:1px solid #e6d7ba;border-radius:8px;
  background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.ph-qr-ph{font-size:12px;color:#c9b98e;letter-spacing:1px}
.ph-qr-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff}
.ph-qr-btn{padding:0;cursor:pointer}
.ph-qr-btn:hover{border-color:var(--c-gold);background:#fbf3e0}
.ph-qr-btn-txt{font-size:15px;color:#a02816;font-weight:700;letter-spacing:2px;line-height:1.6}
.ph-qr-tip{font-size:12px;color:#8a7a5a;line-height:1.7;letter-spacing:1px;text-align:center;max-width:132px}
.ph-stars{list-style:none;padding:0}
.ph-stars li{font-size:13px;color:#6b5a42;padding:5px 0;border-bottom:1px dashed #e9dcc0;line-height:1.7}
.ph-stars li:last-child{border-bottom:none}
.ph-stars b{color:#7a5420;margin-right:4px}
.ph-warn{font-size:13px;color:#a03b2a;background:#fdeee2;border:1px solid #eec8bf;border-radius:8px;padding:9px 12px;margin-bottom:12px;line-height:1.7}

/* ---------- 凶星化解 + 命格匹配 ---------- */
.ph-resolve{background:#fdf6e7;border:1px solid #efe3c8;border-radius:10px;padding:12px 14px;margin-bottom:12px}
.ph-resolve-title{font-size:13px;color:#7a5420;font-weight:700;letter-spacing:1px;margin-bottom:6px;border-left:3px solid var(--c-gold);padding-left:8px}
.ph-resolve-item{font-size:13px;color:#6b5a42;line-height:1.7;padding:2px 0}
.ming-block{margin-top:4px}
.ming-title{font-size:15px;color:#7a5420;font-weight:700;letter-spacing:1px;margin:6px 0 4px;border-left:4px solid var(--c-gold);padding-left:8px}
.ming-intro{font-size:12px;color:#9c8760;line-height:1.7;margin-bottom:12px}
.ming-form{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;align-items:center}
.ming-form input{
  width:96px;font-family:inherit;font-size:14px;color:var(--c-ink);
  background:#fdf6e7;border:1px solid #d9c79f;border-radius:8px;padding:8px 10px;
}
.ming-form input:focus{outline:none;border-color:var(--c-gold)}
.ming-result{margin-top:4px}
.ming-main{font-size:15px;color:#3c3423;margin-bottom:8px}
.ming-main b{color:#a03024}
.ming-seq{font-size:13px;color:#8a7a5a;margin-bottom:10px;letter-spacing:2px}
.cb-sub{font-size:14px;color:#6b5a42;margin-bottom:10px;line-height:1.8}

/* ---------- 手机号码测评 二级导航 ---------- */
.subnav{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--c-line);margin-bottom:14px}
.subtab{
  border:none;background:none;padding:7px 14px;font-size:13px;cursor:pointer;
  color:#7a6a4f;border-bottom:2px solid transparent;transition:.15s;
}
.subtab:hover{color:#5b3d14}
.subtab.on{color:#a43a20;font-weight:700;border-bottom-color:var(--c-red2)}
.sub-pane{padding:2px 0}
.vip-tag{
  font-size:10px;color:#c8891f;border:1px solid #c8891f;border-radius:999px;
  padding:0 5px;margin-left:5px;vertical-align:1px;
}

/* ============================================================
   在线取名
   ============================================================ */
.nm-wrap{padding:2px 0 8px}
.nm-wrap .subnav{margin-bottom:10px}
.nm-pane{padding:2px 0}
.nm-intro{
  font-size:13px;color:#6b5a42;line-height:1.8;background:#fbf3e0;
  border-left:3px solid var(--c-gold);border-radius:6px;padding:9px 12px;margin-bottom:10px;
}
.nm-form{
  background:#fffcf5;border:1px solid var(--c-line);border-radius:10px;
  padding:10px 12px;margin-bottom:12px;
}
.nm-row{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;
  padding:5px 0;min-height:34px;
}
.nm-row.nm-block{align-items:flex-start}
.nm-lab{
  width:78px;flex:none;font-size:13px;color:#7a5420;font-weight:600;line-height:1.4;
}
.nm-sub{font-style:normal;font-weight:400;font-size:11px;color:#9c8760}
.nm-in{
  font-family:inherit;font-size:14px;color:var(--c-ink);
  background:#fdf6e7;border:1px solid #d9c79f;border-radius:8px;padding:8px 10px;
}
.nm-in:focus{outline:none;border-color:var(--c-gold);box-shadow:0 0 0 3px rgba(160,113,60,.12)}
.nm-short{width:120px}
.nm-tiny{width:64px}
.nm-chips-row{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center}
.nm-chip{
  border:1px solid #d9c79f;background:#fdf6e7;color:#6b5a42;border-radius:999px;
  padding:5px 13px;font-size:13px;cursor:pointer;transition:.15s;
}
.nm-chip:hover{border-color:var(--c-gold);color:#5b3d14}
.nm-chip.on{background:var(--c-gold);border-color:var(--c-gold);color:#fff;font-weight:600}
.nm-birth{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center}
.nm-birth select{
  font-family:inherit;font-size:13px;color:var(--c-ink);background:#fdf6e7;
  border:1px solid #d9c79f;border-radius:8px;padding:7px 6px;
}
.nm-birth select:focus{outline:none;border-color:var(--c-gold)}
.nm-birth select:disabled{opacity:.55;cursor:not-allowed}
.nm-hint2{font-size:11px;color:#9c8760;flex:1;min-width:120px}
.nm-actions{gap:10px;margin-top:2px}
.nm-go{
  border:none;background:linear-gradient(135deg,#b98a2f,#a0713c);color:#fff;
  font-size:15px;letter-spacing:2px;border-radius:999px;padding:10px 30px;cursor:pointer;box-shadow:0 3px 10px rgba(160,113,60,.28);
}
.nm-go:active{transform:translateY(1px)}
.nm-again{
  border:1px solid #d9c79f;background:none;color:#8a6d3b;font-size:13px;
  border-radius:999px;padding:9px 20px;cursor:pointer;
}
.nm-again:hover{border-color:var(--c-gold);color:#5b3d14}
.nm-res{margin-top:2px}
.nm-loading{font-size:13px;color:#9c8760;padding:14px 2px}
.nm-err{
  background:#fdeee2;border:1px solid #f0cfbb;color:#a03024;
  font-size:13px;border-radius:8px;padding:10px 12px;margin:6px 0;
}
.nm-tip{font-size:11px;color:#a5977a;line-height:1.7;margin-top:10px;border-top:1px dashed #e2d4bb;padding-top:8px}
#tabName .nm-off{display:none}

/* 五行标签与条 */
.nm-wx{
  display:inline-block;font-style:normal;font-size:10px;line-height:1;
  padding:2px 4px;border-radius:3px;color:#fff;vertical-align:1px;margin-left:2px;
}
.w-mu{background:#2e8b57}
.w-huo{background:#d04a2c}
.w-tu{background:#b98a2f}
.w-jin{background:#5a7d9a}
.w-shui{background:#1c6fb2}
.w-none{background:#b3a893}
.bg-mu{background:#2e8b57}
.bg-huo{background:#d04a2c}
.bg-tu{background:#b98a2f}
.bg-jin{background:#5a7d9a}
.bg-shui{background:#1c6fb2}

/* 八字摘要 */
.nm-bazi{
  background:#fdf6e7;border:1px solid #efe3c8;border-radius:10px;
  padding:12px 14px;margin-bottom:12px;
}
.nm-bazi-title{font-size:14px;color:#7a5420;font-weight:700;letter-spacing:1px;margin-bottom:8px}
.bz-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:8px;margin-bottom:10px}
.bz-col{
  background:#fffcf5;border:1px solid #efe3c8;border-radius:8px;padding:8px 10px;
}
.bz-role{font-size:11px;color:#9c8760}
.bz-gz{font-size:21px;font-weight:700;color:#3c3423;letter-spacing:2px;margin:3px 0}
.bz-line{font-size:13px;color:#5b4a2f;margin:2px 0;display:flex;align-items:center;gap:4px}
.bz-ss{font-size:11px;color:#a0713c;border:1px solid #e2d4bb;border-radius:3px;padding:0 4px;margin-left:3px}
.bz-hid{font-size:11px;color:#8a7a5a;margin-top:4px;line-height:1.9}
.nm-hid{display:inline-block;margin-right:4px;white-space:nowrap}
.nm-bazi-body{font-size:13px;color:#5b4a2f;line-height:1.9}
.nm-wxgrid{display:grid;gap:4px;margin:8px 0}
.nm-wxline{display:flex;align-items:center;gap:8px;font-size:12px}
.nm-wxl{width:14px;color:#6b5a42}
.nm-bar{flex:1;height:8px;background:#eadfc6;border-radius:4px;overflow:hidden}
.nm-bar i{display:block;height:100%;border-radius:4px}
.nm-wxv{width:36px;text-align:right;color:#8a7a5a}
.nm-yong{
  background:#fff9ec;border-left:3px solid var(--c-red2);border-radius:4px;
  padding:8px 10px;margin:6px 0;
}
.nm-dim{font-size:12px;color:#9c8760}

/* 候选名卡片 */
.nm-headline{font-size:13px;color:#7a5420;margin:10px 0 8px}
.nm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.nm-card{
  background:#fffcf5;border:1px solid var(--c-line);border-radius:10px;
  padding:10px 12px;border-top:3px solid var(--c-gold);
}
.nm-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:4px}
.nm-full{font-size:24px;font-weight:800;color:#3c3423;letter-spacing:3px}
.nm-score{text-align:right;flex:none}
.nm-score b{font-size:19px;color:#a03024;line-height:1}
.nm-score span{
  display:block;font-size:10px;color:#a0713c;letter-spacing:1px;
}
.nm-chs{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 6px}
.nm-ch{
  background:#fbf3e0;border:1px solid #efe3c8;border-radius:8px;
  padding:5px 6px;text-align:center;min-width:52px;
}
.nm-cc{display:block;font-size:20px;font-weight:700;color:#3c3423;font-style:normal}
.nm-ch em{
  display:block;font-style:normal;font-size:10px;color:#8a7a5a;line-height:1.5;
  max-width:110px;margin-top:2px;
}
.nm-note{font-size:11px;color:#a0713c;border-top:1px dashed #e2d4bb;padding-top:5px;line-height:1.6}

/* 手机窄屏适配 */
@media (max-width:560px){
  .nm-form{padding:8px 10px}
  .nm-lab{width:66px}
  .nm-birth select{padding:6px 4px;font-size:12px}
  .nm-grid{grid-template-columns:1fr}
}

/* ============ 奇门排盘（tabPaipan） ============ */
.pp-form{margin-top:4px}
.pp-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
@media (max-width:1200px){.pp-layout{grid-template-columns:1fr}}
.pp-board{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;max-width:340px;margin:0 auto}
.pp-board .qcell{
  position:static;width:auto;height:auto;min-height:108px;padding:6px 2px;
  display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;
}
.pp-board .qcell.qc5{min-height:108px;background:#f6e5c0}
.pp-chead{font-size:12px;font-weight:700;color:#3c3423;letter-spacing:1px;white-space:nowrap}
.pp-legend{font-size:10px;color:#9c8760;text-align:center;margin-top:6px;line-height:1.5}
.pp-board-box{background:#fffdf7;border:1px solid var(--c-line);border-radius:10px;padding:10px 8px}
.pp-side{font-size:12.5px;line-height:1.8;color:#4f4230;background:#fffcf5;border:1px solid var(--c-line);border-radius:10px;padding:10px 12px}
.pp-side b{color:#7a5420}
.pp-k{border-bottom:1px dashed #e7dcc3;padding:6px 0}
.pp-k:last-child{border-bottom:0}
.pp-kt{font-size:13px;font-weight:700;color:#8a4d2a;margin-bottom:2px}
.pp-kb span{color:#8a7a5a}
.pp-lk b{color:#a02816}
.pp-sec{
  font-size:15px;font-weight:800;color:#4b3a20;margin:16px 0 8px;
  display:flex;align-items:center;gap:8px;letter-spacing:1px;
}
.pp-sec::before{content:'';width:4px;height:16px;background:var(--c-gold);border-radius:2px}
.pp-free{font-size:10px;font-weight:600;color:#fff;background:#3a9a4e;border-radius:4px;padding:1px 5px;letter-spacing:0}
.pp-vip{font-size:10px;font-weight:600;color:#fff;background:#b5893a;border-radius:4px;padding:1px 5px;letter-spacing:0}
.pp-card{
  background:#fffcf5;border:1px solid var(--c-line);border-radius:10px;
  padding:10px 12px;margin-bottom:10px;border-top:3px solid var(--c-gold);
}
.pp-card-t{font-size:13px;font-weight:800;color:#5b4a2c;margin-bottom:6px;border-left:3px solid var(--c-gold);padding-left:6px}
.pp-para p{margin:6px 0;font-size:13px;line-height:1.85;color:#4f4230;text-align:justify}
.pp-para b{color:#a02816}
.pp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px}
.pp-g{font-size:12px;line-height:1.7;color:#4f4230;background:#fff8ea;border:1px solid #eee3cb;border-radius:6px;padding:4px 8px}
.pp-g b{color:#7a5420}
.pp-foot{font-size:11px;color:#9c8760;border-top:1px dashed #e7dcc3;margin-top:8px;padding-top:6px;line-height:1.6}
.pp-note{font-size:11px;color:#9c8760;line-height:1.7;margin:6px 2px;text-align:justify}
.pp-err{font-size:13px;color:#b03a2e;background:#fdf1ee;border:1px solid #ecd0c8;border-radius:8px;padding:10px 12px;margin-top:10px}
.pp-p-ok{color:#2c6b34}
.pp-p-ok b{color:#2c6b34}
.pp-p-mid{color:#8a6a1f}
.pp-p-mid b{color:#8a6a1f}
.pp-p-warn{color:#a03024}
.pp-p-warn b{color:#a03024}
.lock-box{margin-top:4px}

/* ============ 生肖运势（tabShengxiao） ============ */
.xz-wrap{display:flex;flex-direction:column;gap:10px;padding:2px}
.xz-hd{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.xz-hd b{font-size:18px;color:#5b3d14;letter-spacing:1px}
.xz-year{font-size:13px;color:#a03024;background:#fbeae6;border:1px solid #eec8bf;border-radius:999px;padding:1px 10px}
.xz-sub{font-size:13px;color:#8a7a5a;line-height:1.8}
.xz-pick{display:flex;flex-wrap:wrap;gap:8px}
.xz-chip{border:1px solid #d3bd8e;background:#fffaf0;color:#6b4a14;border-radius:999px;padding:5px 0;width:52px;font-size:15px;cursor:pointer;text-align:center;font-family:inherit}
.xz-chip:hover{border-color:#7c5216;background:#f0dfb8}
.xz-chip.on{background:#7c5216;border-color:#7c5216;color:#f5e6c4;font-weight:700}
.xz-birth{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:#8a7a5a}
.xz-birth input{width:200px;max-width:100%;font-family:inherit;font-size:14px;color:var(--c-ink);background:#fdf6e7;border:1px solid #d9c79f;border-radius:8px;padding:8px 12px}
.xz-birth input:focus{outline:none;border-color:var(--c-gold)}
.xz-btn{border:1px solid #7c5216;background:#7c5216;color:#f5e6c4;border-radius:999px;padding:7px 18px;font-size:14px;cursor:pointer;font-family:inherit}
.xz-btn:hover{opacity:.9}
.xz-err{color:var(--c-red);font-size:12px}
.xz-card{border:1px solid #e3d2ac;border-radius:12px;padding:14px;background:#fffaf0;margin-top:2px}
.xz-hero{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}
.xz-ico{width:56px;height:56px;border-radius:14px;background:linear-gradient(145deg,#a0702c,#7c5216);color:#f7e9c8;font-size:30px;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px rgba(124,82,22,.25);flex:none}
.xz-info{flex:1;min-width:200px}
.xz-name{font-size:19px;font-weight:800;color:#5b3d14;letter-spacing:1px}
.xz-meta{font-size:12.5px;color:#8a7a5a;margin-top:3px;line-height:1.6}
.xz-wx{font-size:12px;color:#a08040}
.xz-tagbox{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto}
.xz-tag{border-radius:999px;padding:2px 12px;color:#fff;font-size:13px;font-weight:700;letter-spacing:1px}
.xz-tag.xl-g{background:#1f7a4d}
.xz-tag.xl-b{background:#4a6fa5}
.xz-tag.xl-o{background:#c07a1f}
.xz-tag.xl-p{background:#8a5a9e}
.xz-tag.xl-r{background:#b03a2e}
.xz-stars{color:#d9a520;font-size:14px;letter-spacing:2px}
.xz-subtag{font-size:11px;color:#a49a86}
.xz-summary{font-size:14px;line-height:2;color:#3c3423;background:#fffdf6;border:1px dashed #e3d2ac;border-radius:8px;padding:10px 12px;margin:12px 0;text-align:justify}
.xz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.xz-cell{background:#fffdf6;border:1px solid #efe3c8;border-radius:10px;padding:10px 12px}
.xz-cell b{display:block;font-size:14px;color:#7a5420;border-left:3px solid #c9a45f;padding-left:6px;margin-bottom:6px}
.xz-cell p{font-size:13px;line-height:1.9;color:#4f4230;text-align:justify;margin:0}
.xz-luckbox{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 14px;margin:12px 0 2px}
.xz-kv{display:flex;align-items:baseline;gap:8px;font-size:13px}
.xz-k{color:#7a5420;flex:none;font-weight:700}
.xz-luck{display:flex;flex-wrap:wrap;gap:6px;color:#6b5a42}
.xz-kchip{font-style:normal;background:#f3e6c9;border:1px solid #e0cd9f;color:#7a5420;border-radius:999px;padding:1px 10px;font-size:12px}
.xz-hl{background:#eaf3ea;border-color:#c6dfc6;color:#2c6b34}
.xz-tips{border-top:1px dashed #dcc9a5;margin-top:10px;padding-top:8px}
.xz-tips b{display:block;font-size:13px;color:#a03024;margin-bottom:4px}
.xz-tips p{font-size:13px;line-height:1.9;color:#5a4c36;margin:0;text-align:justify}
.xz-tip{font-size:11px;color:#a49a86;line-height:1.7;margin:10px 2px 2px;text-align:justify}
@media (max-width:560px){
  .xz-pick{gap:6px}
  .xz-chip{width:48px;font-size:14px;padding:4px 0}
  .xz-tagbox{align-items:flex-start}
}
/* ---------- 生肖运势 · 逐月详解 ---------- */
.xz-seg{display:inline-flex;gap:6px;background:#efe3c6;border:1px solid #e2d1a6;border-radius:999px;padding:3px;margin-bottom:2px}
.xz-seg-btn{border:0;background:transparent;color:#6b5a42;border-radius:999px;padding:5px 16px;font-size:13.5px;cursor:pointer;font-family:inherit;letter-spacing:1px}
.xz-seg-btn:hover{color:#5b3d14}
.xz-seg-btn.on{background:#7c5216;color:#f5e6c4;font-weight:700}
.xz-month{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.xz-mgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
.xz-mbtn{border:1px solid #dfcfae;background:#fffaf0;border-radius:10px;color:#6b4a14;cursor:pointer;font-family:inherit;text-align:center;padding:6px 2px 7px;line-height:1.3}
.xz-mbtn:hover{border-color:#7c5216;background:#f7ecd2}
.xz-mbtn.on{border-color:#7c5216;background:#f0dfb8;box-shadow:0 0 0 1px #7c5216 inset}
.xz-mbtn b{display:block;font-size:15px;letter-spacing:1px}
.xz-mbtn em{display:block;font-style:normal;font-size:10px;color:#9b8a68;margin-top:1px;white-space:nowrap}
.xz-mbtn i{display:inline-block;font-style:normal;font-size:10px;color:#fff;border-radius:999px;padding:0 7px;line-height:1.7;margin-top:4px;letter-spacing:1px}
.xz-mbtn i.m-lv-g{background:#1f7a4d}
.xz-mbtn i.m-lv-p{background:#4a6fa5}
.xz-mbtn i.m-lv-w{background:#b03a2e}
.xz-sumrel{margin-top:-6px}
@media (max-width:480px){
  .xz-mgrid{grid-template-columns:repeat(4,1fr)}
  .xz-seg-btn{padding:5px 12px;font-size:13px}
}
