/* A quiet Chinese almanac: rice paper, bamboo green, cinnabar seals. */
.almanac-page{--ink:#304b42;--muted:#69796e;--jade:#426c59;--paper:#fffef8;--line:#dce4d7;--seal:#ab5143;color:var(--ink);background:radial-gradient(ellipse at 95% 0%,#e7efdf 0,transparent 38%),linear-gradient(110deg,#f8f8ef,#f2f6ee);padding:0 28px 28px;margin:24px -28px 0;border-radius:8px;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
.almanac-page h1,.almanac-page h2,.almanac-page h3,.almanac-page .calendar-tabs,.almanac-page .lunar-caption{font-family:"Songti SC","STSong","Noto Serif CJK SC","SimSun",serif}
.almanac-page .calendar-heading{position:relative;isolation:isolate;overflow:hidden;padding:38px 0 22px;margin-bottom:24px;border-color:var(--line)}
.almanac-page .calendar-heading:after{content:"";position:absolute;z-index:-1;right:24px;top:12px;width:220px;height:180px;opacity:.65;background:url("/static/news/almanac-bamboo.svg") center/contain no-repeat;pointer-events:none}
.almanac-page .calendar-heading .eyebrow{color:var(--jade);font-size:11px;letter-spacing:3px;margin-bottom:12px}
.almanac-page .calendar-heading h1{font-size:40px;letter-spacing:5px;font-weight:600;line-height:1.5;margin:0 0 8px}
.almanac-page .calendar-heading h1 span{color:#6c8068}.almanac-page .calendar-heading>p:not(.eyebrow){color:var(--muted);font-size:14px;letter-spacing:2px}
.almanac-page .calendar-tabs{gap:8px 24px;margin-top:25px;font-size:15px;font-weight:500}
.almanac-page .calendar-tabs a{padding:7px 0;border-bottom:1px solid #b6c9b5;color:var(--jade)}
.almanac-page .calendar-tabs a:hover{color:var(--seal);border-color:var(--seal)}
.almanac-page .calendar-layout{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:20px;align-items:stretch}
.almanac-page .calendar-card{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:24px;margin-bottom:20px;box-shadow:0 4px 18px #354b3615;scroll-margin-top:20px}
.almanac-page .calendar-card h2{font-weight:600;letter-spacing:1px;color:var(--ink)}
.almanac-page .calendar-month h2{font-size:24px}.almanac-page .calendar-month>a{color:var(--jade);border:1px solid var(--line);border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-size:20px;padding:0}
.almanac-page .calendar-picker{font-size:12px;gap:9px;margin:18px 0}.almanac-page .calendar-picker input{color:var(--ink);background:#fafcf7;border-color:#cbd8c7;border-radius:5px;padding:8px;min-width:0}
.almanac-page .calendar-picker a{color:var(--jade);text-decoration:underline;text-underline-offset:4px}.almanac-page button{background:var(--jade);border-radius:5px;padding:9px 14px}
.almanac-page .calendar-grid{gap:4px}.almanac-page .calendar-grid>span:not(.calendar-empty){font-size:12px;color:var(--muted);padding:8px}
.almanac-page .calendar-grid>a{border:1px solid transparent;border-radius:5px;background:#f7f9f2;height:66px;min-height:66px;justify-content:center;gap:5px;color:var(--ink)}
.almanac-page .calendar-grid b{font-family:Georgia,serif;font-size:23px;font-weight:400}.almanac-page .calendar-grid small{font-size:11px;color:#68765f}
.almanac-page .calendar-grid .festival small{color:var(--seal)}.almanac-page .calendar-grid>a:hover{background:#e9f0e2;border-color:#b8cbb3}
.almanac-page .calendar-grid .selected{background:var(--jade);color:#fffef6;box-shadow:inset 0 0 0 3px var(--jade),inset 0 0 0 4px #ffffff55}.almanac-page .calendar-grid .selected small{color:#fffef6}
.almanac-page .calendar-note{color:var(--muted);font-size:12px;line-height:1.9;margin-top:16px}
.almanac-page .calendar-today{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 34%,#fffef8 0 32%,transparent 33%),linear-gradient(145deg,#edf3e7,#f8f7ec);border:1px solid #cddcc5;overflow:hidden}
.almanac-page .calendar-today:before{content:"";position:absolute;inset:9px;border:1px solid #b4c6aa88;border-radius:4px;pointer-events:none}
.almanac-page .lunar-caption{font-size:12px;letter-spacing:4px;color:var(--jade);margin:8px 0 12px}.almanac-page .date-number{font-family:Georgia,"Songti SC",serif;font-size:104px;line-height:1.05;font-weight:400;color:var(--seal)}
.almanac-page .calendar-today>p{font-size:13px;color:#68785e;margin:10px 0}.almanac-page .calendar-today h2{font-size:25px;margin:10px 0;letter-spacing:2px}
.almanac-page .calendar-badge{background:#fbf2e7;color:#995342;border:1px solid #ddc6ae;border-radius:3px;font-size:12px}
.almanac-page .calendar-clock{width:100%;border-color:#cbd8c4;color:var(--muted);gap:7px;margin-top:22px;padding-top:15px;font-size:12px}
.almanac-page .section-heading{border-color:var(--line)}.almanac-page .section-heading>span{color:var(--muted);font-size:12px}.almanac-page .section-heading h2 small{font-family:Georgia,serif;font-size:13px;letter-spacing:0;color:var(--muted)}
.almanac-page .yi-ji{gap:16px}.almanac-page .yi-ji>div{background:#edf4e9;border:1px solid #dce8d5;border-radius:6px;align-items:flex-start}.almanac-page .yi-ji>div+div{background:#faf0e9;border-color:#eddcd1}
.almanac-page .yi-ji h3{flex:0 0 38px;line-height:38px;text-align:center;font-size:25px;border:1px solid currentColor;border-radius:4px;color:var(--jade);font-weight:500}.almanac-page .yi-ji>div+div h3{color:var(--seal)}
.almanac-page .yi-ji p{font-size:14px}.almanac-page .almanac-details{background:var(--line);border-color:var(--line);border-radius:5px;overflow:hidden}.almanac-page .almanac-details>div{background:#fcfcf6}.almanac-page .almanac-details dt{color:var(--muted)}
.almanac-page .calendar-explanations{font-size:14px}.almanac-page summary{color:var(--jade)}
.almanac-page .hour-grid article,.almanac-page .zodiac-grid article{border:1px solid var(--line);border-top:2px solid #b0c5a6;border-radius:5px;background:#f8faf3}.almanac-page .zodiac-symbol{color:#698563}.almanac-page .zodiac-grid p{color:var(--muted)}
.almanac-page .calendar-zone-picker{background:#eaf1e4;border-color:#d2dfcb;border-left:3px solid #7d9c72;border-radius:7px;padding:22px}.almanac-page .calendar-zone-picker h2{color:var(--jade)}.almanac-page .calendar-zone-picker select{background:var(--paper);color:var(--ink);border-color:#becfb5}
.almanac-page .canada-hour,.almanac-page .canada-term{background:#eaf2e4;border-left:2px solid #91ac80}.almanac-page .canada-hour>strong,.almanac-page .canada-term>strong{color:var(--jade)}
.almanac-page .terms-grid>a{background:#f3f7ec;border:1px solid #e0e7d8;border-radius:5px;padding:16px}.almanac-page .terms-grid>a>strong{font-family:"Songti SC","SimSun",serif;font-size:20px;letter-spacing:3px;font-weight:500}.almanac-page .terms-grid>a:hover{border-color:#96af86;background:#eaf2e3}
.almanac-page a:focus-visible,.almanac-page button:focus-visible,.almanac-page input:focus-visible,.almanac-page select:focus-visible,.almanac-page summary:focus-visible{outline:2px solid var(--seal);outline-offset:3px}
@media(max-width:1000px){.almanac-page{margin:16px 0 0;padding:0 18px 18px}.almanac-page .calendar-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.almanac-page .calendar-card{padding:18px}}
@media(max-width:700px){.almanac-page{padding:0 12px 12px}.almanac-page .calendar-heading{padding:26px 4px 18px}.almanac-page .calendar-heading:after{width:130px;right:-24px;top:0;opacity:.38}.almanac-page .calendar-heading h1{font-size:29px;letter-spacing:3px}.almanac-page .calendar-heading>p:not(.eyebrow){display:block;font-size:12px;letter-spacing:1px}.almanac-page .calendar-tabs{gap:8px 18px;margin-top:18px;font-size:13px}.almanac-page .calendar-layout{grid-template-columns:minmax(0,1fr);gap:0}.almanac-page .calendar-card{padding:16px;margin-bottom:16px}.almanac-page .calendar-month h2{font-size:21px}.almanac-page .calendar-grid{gap:3px}.almanac-page .calendar-grid>a{height:56px;min-height:56px}.almanac-page .calendar-grid b{font-size:20px}.almanac-page .calendar-grid small{font-size:10px}.almanac-page .calendar-today{display:flex;padding:24px 16px}.almanac-page .date-number{font-size:76px}.almanac-page .calendar-today h2{font-size:22px}.almanac-page .calendar-clock{flex-direction:row;justify-content:center;gap:24px}.almanac-page .calendar-clock span{display:flex;flex-direction:column;gap:5px}.almanac-page .yi-ji{grid-template-columns:1fr}.almanac-page .yi-ji>div{padding:14px;gap:12px}.almanac-page .terms-grid>a{padding:12px}.almanac-page .calendar-zone-picker{padding:16px}.almanac-page .section-heading{align-items:flex-start;gap:8px;flex-wrap:wrap}}
@media(prefers-reduced-motion:no-preference){.almanac-page a,.almanac-page button{transition:background-color .15s,border-color .15s,color .15s}}
/* Reading hierarchy: date → daily guidance → optional reference. */
.almanac-page{max-width:1180px;margin-left:auto;margin-right:auto;padding:0 32px 32px;background:radial-gradient(ellipse at 96% 1%,#e5efdf 0,transparent 33%),#f4f6ed}
.almanac-page .calendar-heading{padding:42px 8px 22px;margin-bottom:0}.almanac-page .calendar-heading h1{font-size:42px;letter-spacing:6px}.almanac-page .calendar-heading:after{right:32px;width:250px;height:210px;top:0;opacity:.7}
.almanac-page .calendar-tabs{gap:8px;margin-top:28px}.almanac-page .calendar-tabs a{border:1px solid transparent;border-radius:24px;padding:8px 18px;background:#ffffff88}.almanac-page .calendar-tabs a:hover{background:#e5eddf;border-color:#b5c8ac}.almanac-page .calendar-tabs a:last-child{margin-left:auto;background:transparent;font-size:13px}
.almanac-page .calendar-intro{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 4px 16px;font-size:12px;color:var(--muted)}.almanac-page .calendar-intro>span{letter-spacing:2px;color:var(--jade)}.almanac-page .calendar-intro p{margin:0}
.almanac-page .calendar-card{border-radius:12px;box-shadow:0 3px 14px #354b3608;padding:26px;margin-bottom:24px}.almanac-page .calendar-layout{gap:24px;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}
.almanac-page .calendar-month>span{width:36px;text-align:center;color:#9ca796}.almanac-page .calendar-picker{padding-bottom:16px;border-bottom:1px solid #e5eadf;gap:10px}.almanac-page .calendar-picker>label{color:var(--muted)}.almanac-page .calendar-picker input{font-size:14px}.almanac-page .calendar-picker a{font-size:12px}
.almanac-page .calendar-grid>a{height:68px;min-height:68px;background:#f6f8f0}.almanac-page .calendar-grid>a:nth-child(7n+6):not(.selected),.almanac-page .calendar-grid>a:nth-child(7n):not(.selected){background:#eff3e8}
.almanac-page .calendar-legend{display:flex;flex-wrap:wrap;gap:18px;font-size:11px;color:var(--muted);margin-top:14px}.almanac-page .calendar-legend span{display:flex;align-items:center;gap:6px}.almanac-page .calendar-legend i{width:9px;height:9px;background:var(--jade);border-radius:2px}.almanac-page #month>.calendar-note{font-size:11px;margin-bottom:0;margin-top:10px}
.almanac-page .calendar-today{box-shadow:none;background:radial-gradient(circle at 50% 35%,#fffef9 0 31%,transparent 31.5%),linear-gradient(140deg,#eaf1e1,#f8f6e9)}.almanac-page .calendar-today:before{border-radius:7px;inset:10px}.almanac-page .calendar-today .lunar-caption{font-size:12px;letter-spacing:2px;margin:10px 0 24px}.almanac-page .date-number{font-size:110px}.almanac-page .calendar-today h2{font-size:24px;line-height:1.7;max-width:100%;overflow-wrap:anywhere}.almanac-page .daily-jump{position:relative;margin-top:22px;padding:8px 20px;font-size:13px;color:var(--jade);border-bottom:1px solid #aabd9b}
.almanac-page .section-heading{margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:0}.almanac-page .section-heading h2{margin:0;font-size:25px}.almanac-page .section-heading h2 small{display:block;font-family:inherit;font-weight:400;font-size:13px;margin-top:8px}.almanac-page .section-intro{color:var(--muted);font-size:13px;line-height:1.9;max-width:790px;margin:12px 0 20px}
.almanac-page .yi-ji{margin:20px 0;gap:20px}.almanac-page .yi-ji>div{padding:22px;border-radius:8px;gap:18px}.almanac-page .yi-ji h3{font-size:28px;flex-basis:42px;line-height:42px}.almanac-page .yi-ji h4{font-size:12px;font-weight:500;letter-spacing:2px;color:var(--jade);margin:0 0 10px}.almanac-page .yi-ji>div+div h4{color:#985144}.almanac-page .yi-ji span{background:#ffffff99;border-radius:4px;margin:0 6px 6px 0;padding:2px 9px;font-size:14px;line-height:1.8}
.almanac-page details.almanac-disclosure{border-top:1px solid var(--line);margin-top:14px;padding-top:16px;font-size:14px;line-height:1.8}.almanac-page .almanac-disclosure>summary{font-weight:500;color:var(--ink);padding:4px 0;min-height:30px;cursor:pointer}.almanac-page .almanac-disclosure>summary::marker{color:#839b75;font-size:12px}.almanac-page .almanac-disclosure>summary>span{font-size:12px;color:var(--muted);margin-left:16px;font-weight:400}.almanac-page .almanac-disclosure[open]>summary{margin-bottom:18px}.almanac-page .glossary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0}.almanac-page .glossary-grid>div{padding:14px;background:#f5f7ef;border-radius:6px}.almanac-page .glossary-grid dt{font-size:14px;color:var(--jade);margin-bottom:6px}.almanac-page .glossary-grid dd{margin:0;font-size:12px;color:var(--muted)}
.almanac-page .calendar-zone-picker{box-shadow:none;border:1px solid #d8e2cf;border-radius:10px;padding:22px 26px;margin:8px 0 24px;gap:6px 24px}.almanac-page .calendar-zone-picker h2{font-size:19px}.almanac-page .calendar-zone-picker p{margin:6px 0 0;line-height:1.7}.almanac-page .calendar-zone-picker #calendar-zone-status{font-size:11px;margin:4px 0 0}.almanac-page .calendar-zone-picker select{min-height:42px}
.almanac-page .hour-help{margin-bottom:22px}.almanac-page .hour-grid{gap:14px}.almanac-page .hour-grid article{border-top:1px solid var(--line);padding:18px;background:#fafbf6;border-radius:8px}.almanac-page .hour-grid h3{font-size:19px;font-weight:500}.almanac-page .hour-grid h3 small{font-family:inherit;font-size:12px;font-weight:400;color:var(--muted);margin-left:6px}.almanac-page .hour-grid header>b{font-family:"Songti SC",serif;font-size:13px;font-weight:500;border:1px solid #dccdc1;color:#91604c;min-width:26px;text-align:center;line-height:26px;border-radius:50%}.almanac-page .hour-grid header>.luck-good{color:var(--jade);border-color:#bdcfb6}.almanac-page .canada-hour{border-left:0;border-radius:5px;background:#eef3e7;padding:11px}.almanac-page .canada-hour>strong{font-size:10px;font-weight:400}.almanac-page .canada-hour>span{font-size:12px;font-weight:500;line-height:1.9;margin-top:5px}.almanac-page .beijing-reference summary{font-size:11px;color:var(--muted);font-weight:400}.almanac-page .hour-reading{border-top:1px solid #e0e7d9;padding-top:12px}.almanac-page .hour-reading>summary{font-weight:500;font-size:13px}
.almanac-page .terms-grid{margin-top:20px}.almanac-page .terms-grid>a{border-radius:8px}.almanac-page details.zodiac-disclosure{padding:22px 26px;margin-top:0}.almanac-page .zodiac-disclosure>.calendar-card{border:0;background:transparent;box-shadow:none;padding:0;margin:0}.almanac-page .zodiac-disclosure>.calendar-card>h2{display:none}.almanac-page .calendar-card.calendar-note>.almanac-disclosure{padding-top:0;margin-top:0;border:0}
@media(max-width:1000px){.almanac-page{padding:0 20px 20px}.almanac-page .calendar-layout{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px}.almanac-page .calendar-card{padding:20px}.almanac-page .calendar-tabs a{padding:8px 13px}.almanac-page .yi-ji>div{padding:16px}}
@media(max-width:700px){.almanac-page{padding:0 12px 16px;border-radius:0;margin-top:12px}.almanac-page .calendar-heading{padding:28px 4px 18px}.almanac-page .calendar-heading h1{font-size:30px;letter-spacing:3px}.almanac-page .calendar-heading:after{width:150px;height:170px;right:-24px;opacity:.4}.almanac-page .calendar-tabs{gap:6px}.almanac-page .calendar-tabs a{padding:7px 12px;font-size:13px}.almanac-page .calendar-tabs a:last-child{margin-left:0;font-size:12px}.almanac-page .calendar-intro{align-items:flex-start;flex-direction:column;gap:6px;padding:18px 4px 14px;font-size:11px}.almanac-page .calendar-layout{grid-template-columns:minmax(0,1fr);gap:0}.almanac-page .calendar-card{padding:16px;margin-bottom:18px;border-radius:9px}.almanac-page .calendar-grid>a{height:56px;min-height:56px}.almanac-page .calendar-picker{gap:10px 8px}.almanac-page .calendar-picker>label{font-size:11px}.almanac-page .calendar-picker input{font-size:13px;max-width:145px}.almanac-page .calendar-picker button{font-size:12px}.almanac-page .calendar-picker>a{padding:5px 0}.almanac-page .calendar-today{display:grid;grid-template-columns:82px minmax(0,1fr);text-align:left;column-gap:16px;padding:25px}.almanac-page .calendar-today .lunar-caption{grid-column:1/-1;margin:0 0 12px;font-size:11px}.almanac-page .date-number{font-size:72px;grid-column:1;grid-row:2/5;align-self:center}.almanac-page .calendar-today>p{font-size:11px;margin:3px 0}.almanac-page .calendar-today h2{font-size:19px;letter-spacing:0;margin:4px 0}.almanac-page .calendar-today .calendar-badge{grid-column:2;font-size:11px;margin:4px 0}.almanac-page .calendar-clock{grid-column:1/-1;font-size:10px;gap:12px;justify-content:space-between;margin-top:14px}.almanac-page .daily-jump{grid-column:1/-1;text-align:center;margin:12px 0 0;font-size:12px}.almanac-page .section-heading h2{font-size:23px}.almanac-page .section-heading>span{font-size:10px}.almanac-page .section-intro{font-size:12px}.almanac-page .yi-ji{gap:12px}.almanac-page .yi-ji>div{gap:14px}.almanac-page .yi-ji span{font-size:13px;padding:3px 8px}.almanac-page .almanac-disclosure>summary>span{display:block;margin:4px 0 0 16px;font-size:11px}.almanac-page .glossary-grid{grid-template-columns:1fr 1fr;gap:10px}.almanac-page .glossary-grid>div{padding:12px}.almanac-page .calendar-zone-picker{padding:18px;margin-bottom:18px}.almanac-page .calendar-zone-picker h2{font-size:18px}.almanac-page .calendar-zone-picker label{margin-top:12px}.almanac-page .hour-grid{grid-template-columns:1fr}.almanac-page .hour-grid article{padding:16px}.almanac-page details.zodiac-disclosure{padding:18px}.almanac-page .calendar-card{scroll-margin-top:16px}}
