/* 月历版式保留，仅更换天文仪视觉系统。 */
  .wrap{max-width:940px;margin:0 auto;padding:40px 20px 80px}
  .head{text-align:center;margin-bottom:26px}
  .eyebrow{font-size:10.5px;letter-spacing:.6em;color:rgba(236,229,214,.4)}

  .monthNav{display:flex;align-items:center;justify-content:center;gap:16px;margin:22px 0 6px}
  .monthNav button{background:transparent;border:1px solid rgba(236,229,214,.28);color:var(--ivory);
       font-family:var(--song);font-size:15px;width:38px;height:38px;cursor:pointer;transition:.3s}
  .monthNav button:hover{background:rgba(236,229,214,.1);border-color:rgba(236,229,214,.7)}
  .monthNav .t{font-family:var(--kai);font-size:26px;letter-spacing:.14em;min-width:200px;text-align:center}
  .sub{text-align:center;font-size:11.5px;letter-spacing:.24em;color:rgba(236,229,214,.5);margin-bottom:20px}
  .today-btn{background:transparent;border:1px solid rgba(236,229,214,.24);color:rgba(236,229,214,.7);
       font-family:var(--song);font-size:11px;letter-spacing:.3em;text-indent:.3em;padding:6px 14px;cursor:pointer}

  .grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
  .wk{text-align:center;font-size:10.5px;letter-spacing:.2em;color:rgba(236,229,214,.36);padding:6px 0}
  .cell{position:relative;min-height:82px;padding:8px 6px 6px;border:1px solid rgba(236,229,214,.12);
        background:linear-gradient(170deg,rgba(236,229,214,.035),transparent);text-align:center;
        cursor:pointer;transition:.25s}
  .cell:hover{border-color:rgba(236,229,214,.45);background:rgba(236,229,214,.08)}
  .cell.out{opacity:.28}
  .cell.today{border-color:rgba(236,229,214,.8);}
  .cell.sel{border-color:var(--ivory);}
  .cell .n{font-family:var(--kai);font-size:22px;line-height:1.1}
  .cell .l{font-size:10px;color:rgba(236,229,214,.55);margin-top:3px}
  .cell .g{font-size:9.5px;color:rgba(236,229,214,.34);margin-top:2px;letter-spacing:.05em}
  .cell .jq{position:absolute;left:0;right:0;top:0;font-size:9px;letter-spacing:.1em;
            background:rgba(236,229,214,.12);color:#f7e6cd;padding:1px 0}
  .cell.jqday{padding-top:18px}
  .cell .dot{position:absolute;right:5px;bottom:5px;width:6px;height:6px;border-radius:50%}

  .legend{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:18px;
          font-size:10.5px;color:rgba(236,229,214,.45)}
  .legend i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px}

  .info{margin-top:26px;border:1px solid rgba(236,229,214,.24);padding:20px;
        background:linear-gradient(160deg,rgba(236,229,214,.06),transparent)}
  .info .r1{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}
  .info .big{font-family:var(--kai);font-size:34px;letter-spacing:.08em}
  .info .m{font-size:12px;line-height:2;color:rgba(236,229,214,.62)}
  .info .rel{margin-left:auto;text-align:right}
  .info .rel .v{font-family:var(--kai);font-size:26px;letter-spacing:.16em}
  .info .why{margin-top:14px;padding-top:12px;border-top:1px solid rgba(236,229,214,.14);
             font-size:12px;line-height:2;color:rgba(236,229,214,.66)}
  .info .why b{font-weight:400;color:var(--ivory)}
  .hl{margin-top:14px;padding-top:13px;border-top:1px solid rgba(236,229,214,.14)}
  .hl .tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:11px}
  .hl .tag{font-size:11px;padding:3px 10px;border:1px solid rgba(236,229,214,.3);
           color:rgba(236,229,214,.75);letter-spacing:.1em}
  .hl .tag.huang{border-color:rgba(236,229,214,.7);color:var(--ivory)}
  .hl .tag.hei{border-color:rgba(196,96,72,.45);color:#c88a76}
  .hl .yj{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:12px;line-height:1.9}
  .hl .yj b{font-weight:400;width:34px;text-align:center;color:#0d0b07;height:22px;line-height:22px}
  .hl .yj .y{background:var(--ivory)}
  .hl .yj .j{background:var(--火)}
  .hl .yj span{color:rgba(236,229,214,.8)}
  .hl .pz{margin-top:9px;font-size:11px;line-height:1.9;color:rgba(236,229,214,.42)}
  .hl .src{margin-top:9px;font-size:10.5px;line-height:1.8;color:rgba(236,229,214,.3)}
  .hint{margin-top:22px;text-align:center;font-size:11.5px;line-height:2;color:rgba(236,229,214,.42)}
  .hint a{color:var(--ivory)}
  .links{display:flex;gap:10px;justify-content:center;margin-top:26px;flex-wrap:wrap}
  .links a{border:1px solid rgba(236,229,214,.3);color:rgba(236,229,214,.8);font-size:12px;
       letter-spacing:.34em;text-indent:.34em;padding:9px 20px;text-decoration:none;transition:.3s}
  .links a:hover{background:rgba(236,229,214,.1);border-color:rgba(236,229,214,.7)}
  .foot{margin-top:36px;text-align:center;font-size:10.5px;color:rgba(236,229,214,.3);line-height:2}

  @media(max-width:640px){
    .wrap{padding:24px 10px 60px} h1{font-size:27px}
    .cell{min-height:64px;padding:6px 2px 4px} .cell .n{font-size:17px}
    .cell .l{font-size:9px} .cell .g{display:none} .monthNav .t{font-size:20px;min-width:150px}
  }

body{--gx:50%;--gy:24%}.wrap{position:relative;z-index:2;max-width:940px;padding-top:110px}
.head{margin-bottom:30px}.head h1{font-size:36px;font-weight:300;letter-spacing:.3em;margin-top:12px;color:var(--ivory)}
.monthNav .t{font-family:var(--song)}.monthNav button{color:var(--i70)}
.cell.today{border-color:var(--gold);background:rgba(212,181,122,.045)}.cell.sel{border-color:var(--i90)}
.cell .n{font-family:var(--mono);font-size:20px}.info .big,.info .rel .v{font-family:var(--song)}
.foot{color:var(--i40)}.foot .seal{margin-right:8px}.hl .yj b{font-size:11px}.cell .jq{color:var(--ivory)}
@media(max-width:640px){
  .wrap{padding:142px 12px 60px}.monthNav{gap:7px}.monthNav button{width:30px;height:34px;flex:none}
  .monthNav .t{min-width:0;flex:1;font-size:18px;letter-spacing:.02em}.grid{gap:4px}
  .cell{min-width:0}.cell .n{font-size:17px}.info{padding:16px}.info .m{font-size:11px}.info .why{font-size:11px;overflow-wrap:anywhere}
  .legend{gap:10px;font-size:10px}.foot{font-size:10px}.hl .src{overflow-wrap:anywhere}
}
