:root{--ink:#10161c;--ink2:#18202a;--ivory:#ece6d9;--ivory2:#c3c2bb;--mute:#4c4a44;--metal:#b7a57f;--metal2:#75663f;--line:#10161c2e;
 --serif:"Cormorant Garamond","Noto Serif SC",Georgia,serif;--zh:"Noto Serif SC","Cormorant Garamond",serif}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--ink);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font:400 19px/1.45 var(--serif);color:var(--ink);background:var(--ivory);overflow-x:hidden}
html[lang=zh] body{font-family:var(--zh);font-size:16px;font-weight:300;line-height:1.7}
img{display:block;max-width:100%}a{color:inherit}
h2{font:400 34px/1.12 var(--serif)}
html[lang=zh] h2{font:300 24px/1.35 var(--zh);letter-spacing:.14em}
.top{position:absolute;z-index:9;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:22px 24px;color:var(--ivory)}
.back{font:400 16px/1 var(--zh);letter-spacing:.32em;text-decoration:none}
.lang{font:400 16px/1 var(--zh);letter-spacing:.08em;color:var(--ivory);background:none;border:0;padding:8px 0;display:flex;gap:8px;cursor:pointer}
.lang .sl{opacity:.35}.lang .on-zh{opacity:.55}html[lang=zh] .lang .on-zh{opacity:1}html[lang=zh] .lang .on-en{opacity:.55}

.hero{position:relative;height:100vh;height:100svh;min-height:600px;overflow:hidden;color:var(--ivory);background:var(--ink)}
.sky{position:absolute;inset:0}
.sky img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.sky:after{content:"";position:absolute;inset:0;background:linear-gradient(#10161c99 0,#10161c14 30%,#10161c33 56%,#10161cf0 88%)}
.hero h1{position:absolute;z-index:3;top:84px;right:24px;display:flex;flex-direction:column;gap:6px;font:200 clamp(34px,10vw,54px)/1.15 var(--zh);animation:fade 2.6s ease-out both}
@keyframes fade{from{opacity:0}}
.heroText{position:absolute;z-index:3;left:24px;right:24px;bottom:48px;animation:fade 2.6s ease-out both}
.kick{font-size:16px;letter-spacing:.2em;text-transform:uppercase;color:var(--metal)}
html[lang=zh] .kick{font-size:16px}
.heroText h2{font-size:40px;margin:6px 0 8px}
html[lang=zh] .heroText h2{font-size:27px}
.heroText p:not(.kick){max-width:34ch}
.quiet{display:inline-block;margin-top:16px;font-size:17px;letter-spacing:.06em;text-decoration:none;padding-bottom:5px;border-bottom:1px solid var(--metal)}
.btn{display:block;width:100%;font:500 17px/1 var(--serif);letter-spacing:.08em;color:var(--ink);background:none;border:1px solid var(--ink);padding:16px 18px;cursor:pointer;transition:background .8s,color .8s}
.btn:hover{background:var(--ink);color:var(--ivory)}
html[lang=zh] .btn{font:400 16px/1 var(--zh)}

.plain{padding:64px 24px}
.plain h2{margin-bottom:14px}.plain p+p{margin-top:12px}

.board{padding:64px 24px;background:var(--ink);color:var(--ivory);scroll-margin-top:0}
.sub{margin:8px 0 26px;color:inherit;opacity:.78}
.grid{display:grid;grid-template:repeat(4,1fr)/repeat(4,1fr);aspect-ratio:1;max-width:520px;margin:auto;border:1px solid #b7a57f80}
.grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;font:300 17px/1.1 var(--zh);color:var(--ivory);background:none;border:.5px solid #b7a57f55;cursor:pointer;transition:background 1s,color 1s;-webkit-tap-highlight-color:transparent}
.grid button small{font:400 16px/1 var(--serif);text-align:center;color:var(--ivory2);transition:color 1s}
.grid button[aria-pressed=true]{background:var(--metal);color:var(--ink)}
.grid button[aria-pressed=true] small{color:var(--ink)}
.core{grid-area:2/2/4/4;display:grid;place-content:center}
.core b{font:200 clamp(38px,12vw,60px)/1 var(--zh);letter-spacing:.1em;color:var(--metal)}
.note{max-width:520px;margin:24px auto 0;min-height:118px;border-top:1px solid #ece6d926;padding-top:16px}
.note b{display:block;font:400 26px/1.15 var(--serif)}
html[lang=zh] .note b{font:300 19px/1.4 var(--zh);letter-spacing:.1em}
.note p{margin-top:4px;color:var(--ivory2)}

.guide{padding:64px 24px;display:grid;gap:22px}
.face{width:min(232px,62vw);aspect-ratio:2/3;overflow:hidden}
.face img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.guide .kick{color:var(--metal2)}
.guide h2{margin:4px 0 8px}

.form{padding:64px 24px;border-top:1px solid var(--line);scroll-margin-top:0}
.form .sub{color:var(--mute);opacity:1}
form{display:grid;gap:20px;max-width:520px}
form label:not(.r){display:grid;gap:4px;font-size:18px}
html[lang=zh] form label:not(.r){font-size:16px}
input[type=text],input[type=date],select{width:100%;min-width:0;font:400 18px/1.2 var(--serif);color:var(--ink);background:none;border:0;border-bottom:1px solid var(--ink);border-radius:0;padding:10px 0;height:44px;appearance:none;-webkit-appearance:none}
input:focus-visible,select:focus-visible{outline:0;border-bottom-color:var(--metal2);box-shadow:0 1px 0 var(--metal2)}
fieldset{border:0;display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center}
legend{font-size:18px;margin-bottom:4px;width:100%}
html[lang=zh] legend{font-size:16px}
.r{display:flex;align-items:center;gap:8px;min-height:34px}
.r input{accent-color:var(--metal2);width:16px;height:16px}
.foot{padding:32px 24px 44px;background:var(--ink);color:var(--ivory2);font-size:16px}
.err{color:#7a2e22;font-size:18px}html[lang=zh] .err{font-size:16px}
.lunar{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px}
select{background-image:none}
#yj-country{background:var(--ink)!important}

/* The chart and the reading */
body.read .hero,body.read .plain,body.read .board,body.read .guide,body.read .form{display:none}
.rboard{padding:88px 12px 48px;background:var(--ink);color:var(--ivory)}
.rboard>h2,.rboard>.kick,.rboard>.lede{padding:0 12px;max-width:760px;margin-left:auto;margin-right:auto}
.rboard>.kick{margin-bottom:6px}
.rboard>.lede{margin-top:8px;margin-bottom:24px;color:var(--ivory2)}
.zg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(136px,auto);max-width:760px;margin:auto;border:1px solid #b7a57f80}
.zg button{display:flex;flex-direction:column;justify-content:space-between;gap:6px;min-width:0;padding:7px 5px 6px;text-align:left;font:400 16px/1.15 var(--serif);color:var(--ivory);background:none;border:.5px solid #b7a57f55;cursor:pointer;transition:background .8s;-webkit-tap-highlight-color:transparent}
html[lang=zh] .zg button{font-family:var(--zh);font-weight:300}
.zg .pn{color:var(--metal);display:block}
.zg .st{display:block;flex:1}
.zg .st span{display:block}
.zg .st .mi{color:var(--ivory2)}
.zg .st i{font-style:normal;color:var(--metal);font-family:var(--zh);margin-left:3px;white-space:nowrap}
.zg .gz{display:block;color:var(--ivory2);font-family:var(--zh);font-weight:300}
.zg .none{color:#c3c2bb99}
.zg .life{background:#b7a57f24;box-shadow:inset 0 0 0 1px var(--metal)}
.zg button[aria-pressed=true]{background:#b7a57f4d}
.zc{grid-column:2/4;grid-row:2/4;padding:16px 8px;display:flex;flex-direction:column;justify-content:center;text-align:center;gap:5px;border:.5px solid #b7a57f55;min-width:0;line-height:1.3;font-size:17px}
html[lang=zh] .zc{font-size:16px}
.zc b{font:300 24px/1.2 var(--zh);color:var(--metal);letter-spacing:.08em;margin-bottom:4px;overflow-wrap:anywhere}
.znote{max-width:760px;margin:20px auto 0;padding:14px 12px 0;border-top:1px solid #ece6d926;min-height:112px}
.znote b{display:block;font:400 24px/1.2 var(--serif)}
html[lang=zh] .znote b{font:300 19px/1.4 var(--zh)}
.znote p{color:var(--ivory2);margin-top:4px}
.legend{max-width:760px;margin:18px auto 0;padding:0 12px;color:var(--ivory2)}
.legend i{font-style:normal;color:var(--metal);font-family:var(--zh)}
.warn{max-width:760px;margin:0 auto 22px;padding:12px;border-top:1px solid var(--metal);border-bottom:1px solid var(--metal)}
.rw{padding:56px 24px}
.rw+.rw{border-top:1px solid var(--line)}
.rw h2{margin-bottom:12px}
.rw p+p{margin-top:12px}
.lifeStars{margin-bottom:14px}
.lifeStars b{display:block;font:400 30px/1.15 var(--serif)}
html[lang=zh] .lifeStars b{font:300 22px/1.4 var(--zh);letter-spacing:.08em}
.lifeStars span{color:var(--mute)}
.lock{list-style:none;margin-top:18px;border-top:1px solid var(--line)}
.lock li{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}
.lock li span:last-child{text-align:right;color:var(--mute)}
.wall{background:var(--ink);color:var(--ivory);padding:60px 24px;display:grid;gap:22px}
.wall .face{width:140px}
.wall .kick{color:var(--metal)}
.price{margin:6px 0 16px}
.price b{display:block;font:300 44px/1.1 var(--serif);color:var(--ivory)}
.wall .btn{color:var(--ivory);border-color:var(--metal);max-width:420px}
.wall .btn:hover{background:var(--metal);color:var(--ink)}
.small{color:var(--ivory2);margin-top:10px}
.sec{padding:48px 24px;border-top:1px solid var(--line)}
.sec p+p{margin-top:12px}
.sec .kick{color:var(--metal2)}
.sec h3{font:400 32px/1.15 var(--serif);margin:4px 0 6px}
html[lang=zh] .sec h3{font:300 23px/1.4 var(--zh);letter-spacing:.1em}
.sec .gov{color:var(--mute);margin-bottom:18px}
.sec h4{font:500 22px/1.25 var(--serif);margin:18px 0 4px}
html[lang=zh] .sec h4{font:400 18px/1.5 var(--zh);letter-spacing:.06em}
.sec .note2{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);color:var(--mute)}
.nx{padding:56px 24px;background:var(--ink);color:var(--ivory)}
.nx h2{margin-bottom:20px}
.nx a{display:block;text-decoration:none;padding:18px 0;border-top:1px solid #b7a57f55}
.nx a:last-of-type{border-bottom:1px solid #b7a57f55}
.nx small{display:block;font-size:16px;letter-spacing:.1em;color:var(--metal)}
.nx b{display:block;font:400 24px/1.2 var(--serif);margin:4px 0}
html[lang=zh] .nx b{font:300 19px/1.4 var(--zh)}
.nx span{display:block;color:var(--ivory2)}
.again{display:inline-block;margin-top:24px;font:inherit;color:inherit;background:none;border:0;border-bottom:1px solid var(--metal);padding:0 0 5px;cursor:pointer}
.how{color:var(--mute)}
.how ul{margin:10px 0 0 18px}
.rw .kick{color:var(--metal2)}
.lk{margin-top:40px}
.wp{margin:8px 0 16px}
.zg .bd{display:block}
#yj-country select{width:auto;height:auto;display:inline-block;appearance:auto;-webkit-appearance:auto;border-bottom:1px solid currentColor}
@media (min-width:760px){.sky img{object-position:50% 58%}.board,.plain,.form,.guide,.rw,.sec,.wall,.nx{padding-left:calc(50vw - 300px);padding-right:calc(50vw - 300px)}.zg{grid-auto-rows:minmax(150px,auto)}.zg button{padding:10px 12px}.zc{font-size:19px}.wall{grid-template-columns:auto 1fr;align-items:start;gap:32px}.wall .face{width:180px}.top{padding:26px 48px}.heroText{left:48px;bottom:64px}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
