/* Shared almanac. Uses each page's existing palette. */
.xq-almanac{min-width:0;color:inherit;font-size:14px;line-height:1.6;--hl-line:var(--line,rgba(143,161,174,.23));--hl-muted:var(--muted,#91a0ad);--hl-gold:var(--gold,#d7b66f)}
.xq-almanac *{box-sizing:border-box}
.xq-almanac p{margin:10px 0;overflow-wrap:anywhere}
.xq-almanac a{color:var(--hl-gold);text-underline-offset:3px}
.xq-almanac dl,.xq-almanac dd{margin:0}
.xq-almanac .xq-hl-brief{padding:4px 0 12px}
.xq-almanac .xq-hl-advice{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:baseline;margin:10px 0}
.xq-almanac .xq-hl-advice>b{font-size:15px;color:var(--hl-gold)}
.xq-almanac .xq-hl-avoid>b{color:inherit;opacity:.7}
.xq-almanac .xq-hl-advice>div,.xq-almanac .xq-hl-terms{display:flex;flex-wrap:wrap;gap:5px 14px;min-width:0}
.xq-almanac .xq-hl-term{display:inline-block;max-width:100%;overflow-wrap:anywhere}
.xq-almanac .xq-hl-caption,.xq-almanac .xq-hl-empty{color:var(--hl-muted);font-size:12px;line-height:1.7}
.xq-almanac .xq-hl-caption{margin:8px 0 0}
.xq-almanac .xq-hl-disclosure{margin:0;padding:0;border:0;border-top:1px solid var(--hl-line);border-radius:0;background:none;box-shadow:none}
.xq-almanac .xq-hl-disclosure>summary{display:flex;align-items:center;gap:8px;min-height:48px;margin:0;padding:12px 2px;list-style:none;cursor:pointer;font-size:14px;font-weight:500;color:inherit;background:none;border:0;border-radius:6px;line-height:1.45}
.xq-almanac summary::-webkit-details-marker{display:none}
.xq-almanac .xq-hl-disclosure>summary>span{flex:1;min-width:0}
.xq-almanac .xq-hl-disclosure>summary>small{color:var(--hl-muted);font-size:11px;font-weight:400;text-align:right}
.xq-almanac .xq-hl-disclosure>summary:after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 4px 3px 6px;opacity:.6;transition:transform .18s ease}
.xq-almanac .xq-hl-disclosure[open]>summary:after{transform:rotate(225deg);margin-top:5px}
.xq-almanac summary:focus-visible,.xq-almanac a:focus-visible{outline:2px solid var(--hl-gold);outline-offset:3px}
.xq-almanac .xq-hl-detail-body{padding:0 2px 16px;min-width:0}
.xq-almanac .xq-hl-full-group{margin:0 0 16px}
.xq-almanac .xq-hl-full-group h4{font-family:inherit;font-size:13px;line-height:1.5;font-weight:600;margin:3px 0 6px;color:var(--hl-muted)}
.xq-almanac .xq-hl-directions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:17px 0;border-top:1px solid var(--hl-line);text-align:center}
.xq-almanac .xq-hl-directions dt{font-size:12px;color:var(--hl-muted);overflow-wrap:anywhere}
.xq-almanac .xq-hl-directions dd{font-size:14px;margin-top:4px;color:var(--hl-gold);overflow-wrap:anywhere}
.xq-almanac .xq-hl-hours{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:7px}
.xq-almanac .xq-hl-hour{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 3px;border:1px solid var(--hl-line);border-radius:10px;font-size:12px}
.xq-almanac .xq-hl-hour small{font-size:10px;color:var(--hl-muted);white-space:nowrap}
.xq-almanac .xq-hl-hour strong{font-size:12px;font-weight:500}
.xq-almanac .xq-hl-hour>span{font-size:11px;color:var(--hl-muted)}
.xq-almanac .xq-hl-hour.is-favorable>span{color:var(--hl-gold)}
.xq-almanac .xq-hl-pair{display:grid;grid-template-columns:minmax(72px,.25fr) minmax(0,1fr);gap:12px;padding:8px 0;font-size:13px;line-height:1.7}
.xq-almanac .xq-hl-pair dt{color:var(--hl-muted)}
.xq-almanac .xq-hl-pair dd{overflow-wrap:anywhere}
.xq-almanac .xq-hl-glossary{border:0;background:none;border-radius:0;margin:12px 0 0;padding:0}
.xq-almanac .xq-hl-glossary>summary{font-size:12px;color:var(--hl-gold);cursor:pointer;min-height:40px;display:flex;align-items:center;padding:4px 0;list-style:none}
.xq-almanac .xq-hl-glossary>summary:after{content:'+';margin-left:auto}
.xq-almanac .xq-hl-glossary[open]>summary:after{content:'−'}
.xq-almanac .xq-hl-fallback{padding:10px 12px;border-left:2px solid var(--hl-gold);font-size:12px;color:var(--hl-muted)}
@media(max-width:360px){.xq-almanac{font-size:13px}.xq-almanac .xq-hl-directions{gap:3px}.xq-almanac .xq-hl-directions dt{font-size:11px}.xq-almanac .xq-hl-directions dd{font-size:12px}.xq-almanac .xq-hl-disclosure>summary{font-size:13px}}
@media(prefers-reduced-motion:reduce){.xq-almanac .xq-hl-disclosure>summary:after{transition:none}}
