/* 每日黄历渲染样式（shared）— 供 /almanac/ 与未来的 /app/ 复用
   变量来源：shared/tokens.css */
.alm-controls{ display:flex; align-items:center; gap:10px; margin:4px 0 14px; flex-wrap:wrap; }
.alm-controls .label{ font-size:13px; color:var(--ink2); }
.alm-date{ font-size:14px; color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-md); padding:7px 10px; font-family:inherit; }
.alm-date:focus{ border-color:var(--primary); box-shadow:0 0 0 3px rgba(24,24,24,.10); outline:none; }
.alm-top{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-bottom:14px; }
.alm-summary{ font-size:15px; color:var(--ink); }
.alm-summary b{ color:var(--primary); font-weight:600; }
.alm-badge{ font-size:12px; padding:3px 10px; border-radius:var(--radius-sm); border:1px solid var(--line); color:var(--ink2); background:var(--surface2); }
.alm-badge.luck-good{ color:var(--elm-wood); border-color:#cfe3d0; background:#f1f8f2; }
.alm-badge.luck-bad{ color:var(--elm-fire); border-color:#f3d2cd; background:#fcecea; }
.alm-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.alm-card{ border:1px solid var(--line); border-radius:var(--radius-lg); padding:14px 16px; background:var(--surface); }
.alm-card h4{ font-size:13px; font-weight:500; color:var(--ink2); margin-bottom:10px; }
.alm-chips{ display:flex; flex-wrap:wrap; gap:6px; }
.alm-chip{ font-size:13px; padding:4px 10px; border-radius:var(--radius-sm); background:var(--surface2); color:var(--ink); border:1px solid var(--line); }
.alm-chip.yi{ color:var(--elm-wood); border-color:#dcebde; }
.alm-chip.ji{ color:var(--elm-fire); border-color:#f1d8d4; }
.alm-pos{ display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:8px 14px; }
.alm-pos div{ font-size:13px; color:var(--ink); }
.alm-pos b{ color:var(--ink2); font-weight:500; margin-right:6px; }
.alm-pz{ font-size:13px; color:var(--ink2); line-height:1.9; padding:10px 12px; background:var(--surface2); border-radius:var(--radius-md); }
.alm-sub2{ font-size:12px; color:var(--ink3); margin-top:6px; }
.alm-chip.alm-term{ cursor:pointer; transition:background .12s,color .12s; border-bottom:1px dotted var(--ink3); border-radius:0 0 var(--radius-sm) var(--radius-sm); }
.alm-chip.alm-term:hover, .alm-chip.alm-term:focus{ background:var(--surface3); color:var(--primary); outline:none; border-bottom-color:var(--primary); }
.alm-pop{ position:fixed; z-index:90; max-width:300px; display:none; background:var(--surface); border:1px solid var(--line);
    border-radius:var(--radius-md); padding:13px 15px; box-shadow:0 12px 32px rgba(20,18,16,.16); font-size:13px; color:var(--ink); }
.alm-pop-hd{ font-size:14px; font-weight:600; color:var(--primary); margin-bottom:6px; display:flex; align-items:center; gap:8px; }
.alm-pop-cat{ font-size:11px; font-weight:400; color:var(--ink3); border:1px solid var(--line); border-radius:var(--radius-sm); padding:1px 8px; }
.alm-pop-def{ line-height:1.7; color:var(--ink); }
.alm-pop-src{ margin-top:8px; font-size:11px; color:var(--ink3); }
.alm-err{ font-size:13px; color:var(--elm-fire); line-height:1.8; }
@media(max-width:640px){
  .alm-grid{ grid-template-columns:1fr; }
}
