:root{--paper: #f3efe6;--ink: #1c1915;--soft: #6e675f;--faint: #8a8176;--cinnabar: #8f3d32;--moss: #2f5d50;--line: #d9d0c1;--deep: #e7e0d4;--serif: "Songti SC", "STSong", "SimSun", "Noto Serif SC", serif;--sans: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;color-scheme:light}:root[data-skin=ink]{--paper: #161614;--ink: #e6e0d4;--soft: #b7b0a4;--faint: #8d877c;--cinnabar: #c46a55;--moss: #8fafa0;--line: #2c2c28;--deep: #221f1c;color-scheme:dark}:root[data-skin=moon]{--paper: #eef1f0;--ink: #1a2422;--soft: #5c6b68;--faint: #7d8c89;--cinnabar: #8d4a42;--moss: #1f6f78;--line: #d5dddb;--deep: #e2e8e6}:root[data-skin=cinnabar]{--paper: #f6f1ea;--ink: #241816;--soft: #6d584f;--faint: #8d746a;--cinnabar: #7a2e2a;--moss: #3e5c45;--line: #e2d3c8;--deep: #efe4d8}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}button,input{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}::selection{background:var(--deep)}.shell{min-height:100vh}.top,.page,.foot{width:min(880px,calc(100% - 40px));margin-left:auto;margin-right:auto}.page.wide{width:min(960px,calc(100% - 32px))}.top{display:flex;justify-content:space-between;align-items:baseline;padding:28px 0 8px}.brand{font-family:var(--serif);font-size:1.45rem;letter-spacing:.42em;text-decoration:none;font-weight:500}.top nav,.bottom{display:flex;gap:22px}.top a,.bottom a{text-decoration:none;color:var(--soft)}.top a.on,.bottom a.on{color:var(--ink)}.page{padding-bottom:12px}.foot{padding:28px 0 56px;color:var(--faint);font-size:12px}.bottom{display:none}h1,h2,.lunar,.seal,.brand,.num,.pillar b,.clock{font-family:var(--serif);font-weight:500}h1{font-size:1.7rem;margin:0;letter-spacing:.12em}h2{font-size:.8rem;letter-spacing:.28em;font-weight:500;margin:0 0 6px}.clock{font-variant-numeric:tabular-nums;font-size:1.35rem;letter-spacing:.08em;margin:0}.now-sub,.note,.term,.fest,.quiet{color:var(--soft)}.note{color:var(--cinnabar)}.lunar{font-size:clamp(2.4rem,7vw,4rem);line-height:1.15;margin:8px 0 4px;letter-spacing:.08em}.eyebrow,.meta,.term,.fest,.note,.now-sub{margin:0}.eyebrow{display:flex;justify-content:space-between;gap:12px;color:var(--soft)}.meta{margin-top:4px}.textish,.ghost{background:none;border:0;padding:0;color:var(--soft);text-decoration:underline;text-underline-offset:3px}.grade{display:flex;gap:14px;align-items:center;margin:22px 0}.seal{width:46px;height:46px;flex:none;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);font-size:1.3rem}.seal[data-level=宜]{color:var(--moss);border-color:var(--moss)}.seal[data-level=忌]{color:var(--cinnabar);border-color:var(--cinnabar)}.grade p{margin:0}.score{margin-left:8px;color:var(--faint);font-size:13px}.yiji{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:8px 0 18px}.yi{color:var(--moss)}.ji{color:var(--cinnabar)}.yiji p{margin:0}sup{font-size:10px;margin-left:1px;color:var(--cinnabar)}.attrs{display:flex;flex-wrap:wrap;gap:4px 0;list-style:none;padding:8px 0 16px;margin:0}.attrs li:not(:last-child):after{content:"·";margin:0 8px;color:var(--faint)}.pillars{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:8px}.pillars div{padding:12px 8px 12px 0;border-bottom:1px solid var(--line)}.pillars span{display:block;color:var(--faint);font-size:12px;letter-spacing:.22em}.pillars b{display:block;font-size:1.55rem;margin:2px 0;letter-spacing:.06em}.pillars em{font-style:normal;color:var(--soft);font-size:13px}.relations{color:var(--soft);margin:14px 0}.sha{margin:8px 0 18px}.sha-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}.tag{border:1px solid var(--line);background:transparent;padding:1px 8px;font-size:14px}.tag.auspicious{border-color:var(--moss);color:var(--moss)}.tag.ominous{border-color:var(--cinnabar);color:var(--cinnabar)}.tag.on{background:var(--deep)}.sha-desc{margin:8px 0 0;color:var(--soft);border-left:1px solid var(--line);padding-left:12px}.hours{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(68px,1fr);overflow-x:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.hours button{background:transparent;border:0;border-right:1px solid var(--line);padding:10px 4px 12px;text-align:center}.hours button:last-child{border-right:0}.hours b,.hours span{display:block}.hours b{font-weight:500}.hours span{color:var(--soft);font-size:12px;line-height:1.4}.hours button.on{background:var(--deep)}.cal-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:12px 0 18px}.cal-head div{display:flex;gap:14px}.weekdays,.grid{display:grid;grid-template-columns:repeat(7,1fr)}.weekdays span{color:var(--faint);font-size:12px;letter-spacing:.12em;padding:0 4px 6px}.day{min-height:76px;text-align:left;background:transparent;border:1px solid transparent;padding:6px 4px 8px}.day.on{border-color:var(--ink)}.day .num{font-size:1.15rem;line-height:1.2}.day.today .num{color:var(--cinnabar)}.day .sub{display:block;color:var(--soft);font-size:12px;line-height:1.35}.day .sub.term{color:var(--moss)}.day .jian{color:var(--faint);font-size:12px}.group{border-top:1px solid var(--line);padding:18px 0 8px}.group h2{margin-bottom:12px}.row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:7px 0}.row p{margin:2px 0 0;color:var(--faint);font-size:13px}.choice{display:flex;flex-wrap:wrap;gap:8px}.choice button,.switch{background:transparent;border:1px solid var(--line);padding:4px 12px}.choice button[aria-pressed=true],.switch[aria-pressed=true]{border-color:var(--ink)}.swatches{display:flex;flex-wrap:wrap;gap:12px}.swatch{width:124px;min-height:92px;border:1px solid var(--line);background:var(--paper);text-align:left;padding:10px 12px}.swatch b{display:block;font-family:var(--serif);font-size:1.3rem;letter-spacing:.2em;font-weight:500;margin-top:18px}.swatch[data-skin=paper]{background:#f3efe6;color:#1c1915}.swatch[data-skin=ink]{background:#161614;color:#e6e0d4}.swatch[data-skin=moon]{background:#eef1f0;color:#1a2422}.swatch[data-skin=cinnabar]{background:#f6f1ea;color:#241816}.swatch[aria-pressed=true]{outline:1px solid var(--ink);outline-offset:3px}.future{color:var(--faint)}.about{color:var(--soft)}.about p{margin:0 0 8px}:focus-visible{outline:1px solid var(--ink);outline-offset:2px}@media(max-width:720px){.yiji,.pillars{grid-template-columns:1fr 1fr}.day{min-height:64px;padding:4px 2px}}@media(max-width:799px){.top nav{display:none}.bottom{display:flex;position:fixed;left:0;right:0;bottom:0;justify-content:space-around;gap:0;background:var(--paper);border-top:1px solid var(--line);padding:12px 8px calc(12px + env(safe-area-inset-bottom))}.bottom a{padding-bottom:4px}.bottom a.on{box-shadow:inset 0 -1px 0 var(--ink)}.foot{padding-bottom:96px}}
