:root{--paper:#F1EADC;--ink:#151412;--sub:#877e72;--red:#B73229;--rv2-inset-bottom:0px;color-scheme:light}
@font-face{font-family:WenKai;src:url('assets/fonts/lxgw-wenkai-yiwen-supplement.woff2')}@font-face{font-family:RitualTitle;src:url('assets/fonts/ma-shan-zheng-yiwen-titles.woff2')}
*{box-sizing:border-box}html,body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.9 -apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif}body{min-height:100svh}button,a,input,textarea{touch-action:manipulation}button{font:inherit;cursor:pointer;color:inherit;border:0;background:transparent;padding:10px 14px}button:disabled{cursor:wait;opacity:.5}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:2px solid var(--sub);outline-offset:4px}[hidden]{display:none!important}a{color:inherit;text-decoration:none}
header{position:relative;z-index:8;max-width:680px;margin:auto;padding:20px 24px 8px;display:flex;align-items:center;justify-content:space-between;gap:12px;height:70px}.brand{font:28px/1 RitualTitle,KaiTi,serif;letter-spacing:.12em}#top-note{font:12px/1.7 WenKai,KaiTi,serif;color:var(--sub);letter-spacing:.14em}header button{font-size:12px;color:var(--sub)}h1,h2,h3{font-weight:400}h1{font:34px/1.55 WenKai,KaiTi,serif;letter-spacing:.08em}h2{font:26px/1.6 WenKai,KaiTi,serif}h3{font:21px/1.7 WenKai,KaiTi,serif}.eyebrow{font-size:11px;color:var(--sub);letter-spacing:.22em}.micro,.demo-note{font-size:12px;line-height:1.8;color:var(--sub)}.primary{background:var(--ink);color:var(--paper);border-radius:40px;font:16px/1.7 WenKai,KaiTi,serif;letter-spacing:.16em;min-height:48px;padding:12px 30px}.text-link{text-decoration:underline;text-underline-offset:4px;font-size:12px;color:var(--sub)}
#stage{position:fixed;inset:0;display:block;z-index:0;pointer-events:none}#home{position:relative;z-index:1;text-align:center;height:calc(100svh - 70px);min-height:535px;max-width:680px;margin:auto;padding:30px 24px 20px;display:flex;flex-direction:column;align-items:center}#home .eyebrow{margin:4px 0}#home h1{margin:16px 0}#home .home-note{margin-top:auto;font:15px/2 WenKai,KaiTi,serif;color:#655d53}#home .primary{width:min(280px,90%);margin-top:10px}#home .demo-note{margin:15px 0 0}
body[data-page=home] #line-stage,body[data-page=home] #coin-action,body[data-page=home] .ritual-review,body[data-page=home] .hex-label,body[data-page=home] #hex-close,body[data-page=ask] #line-stage,body[data-page=ask] .ritual-review{display:none!important}
body[data-page=ask] #stage{opacity:.16}.q-wrap{position:relative!important;top:auto!important;opacity:1;text-align:left!important;z-index:2;max-width:540px;margin:32px auto;padding:0 28px!important}.q-wrap h1{font-size:29px;margin:12px 0}.q-sub{font-size:14px;color:var(--sub)}body #question-form{margin:24px 0 0;max-width:none}body #question-input{font:17px/1.9 WenKai,KaiTi,serif;min-height:150px;color:var(--ink)}body #confirm-question{background:var(--ink);color:var(--paper);border-radius:30px;min-width:230px;margin:28px auto 0}#question-form details{margin-top:22px;font-size:13px;color:var(--sub)}#privacy-copy{font-size:12px;color:var(--sub);border-top:1px solid #877e7228;padding-top:12px}#privacy-toggle{padding-left:0}
#cast-tools{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:6;text-align:center;width:86%;max-width:450px}#cast-tools p{font-size:11px;color:var(--sub);margin:4px 0 7px}#cast-tools .primary{padding:9px 30px;min-height:44px}#cast-tools .micro{display:block;margin-top:5px}#progress{font-size:12px;letter-spacing:.12em}body #question-anchor{top:83px;color:#655d53;width:80%;left:10%;font:14px/1.8 WenKai,KaiTi,serif}body .ritual-review{bottom:0;left:4px}body .ritual-review a{font-size:10px}body #hex-close p{font-family:WenKai,KaiTi,serif}body #read-hex{font-family:WenKai,KaiTi,serif;color:var(--ink)}body #hex-after strong{color:var(--red)}body #hex-close .moving-detail{font:12px/1.8 sans-serif;letter-spacing:0;margin:0 0 12px;color:var(--sub)}body #hex-close details{font-size:12px;max-width:400px;margin:8px auto 0;color:var(--sub)}
body[data-page=reading] #stage,body[data-page=reading] #line-stage,body[data-page=reading] #question-anchor,body[data-page=reading] #coin-action,body[data-page=reading] .hex-label,body[data-page=reading] #hex-close,body[data-page=reading] .ritual-review{display:none!important}#reading{position:relative;z-index:2;max-width:640px;margin:auto;padding:12px 26px 70px;background:var(--paper)}.question-pin{font:15px/1.9 WenKai,KaiTi,serif;color:#655d53}.question-pin summary{cursor:pointer;font-size:13px}.question-pin p{margin:8px 0 18px}.summary{margin:18px 0 24px;border-bottom:1px solid #877e722b;padding:0 0 18px}.summary canvas{display:block;width:100%;height:132px}.names{display:flex;align-items:center;justify-content:center;text-align:center;gap:20px}.names span{flex:1;min-width:0}.names small{display:block;color:var(--sub);font-size:10px}.names strong{font:25px/1.7 RitualTitle,KaiTi,serif;white-space:nowrap;font-weight:400}.names .changed{color:var(--red)}.names em{font:16px/1.7 serif;color:var(--sub);font-style:normal}.reading-label{font-size:11px;letter-spacing:.18em;color:var(--sub);margin:26px 0 10px}.classics{font:17px/2 WenKai,SimSun,serif;padding-bottom:20px;border-bottom:1px solid #877e722b}.classics p{margin:10px 0}.classics small{font:12px/1.8 sans-serif;color:var(--sub)}.answer{font-size:16px;line-height:2;letter-spacing:.015em}.answer h3{margin:24px 0 10px}.answer p{margin:0 0 20px}.answer .demo-note{margin-top:20px}.follow{border-top:1px solid #877e7240;margin-top:32px;padding-top:14px}.follow textarea{display:block;width:100%;min-height:110px;font:16px/1.9 inherit;background:transparent;border:0;border-bottom:1px solid #877e7260;padding:12px 0;resize:vertical}.follow button.choice{display:block;text-align:left;border-bottom:1px solid #877e7230;width:100%;padding:12px 0}.follow .primary{font-size:14px;margin:18px 0 12px}.closure{margin:36px 0 20px;font:17px/2 WenKai,KaiTi,serif}.ratings{display:flex;justify-content:space-between;gap:4px}.ratings button{font-size:12px;padding:9px 5px;border-bottom:1px solid transparent;flex:1}.ratings button.selected{color:var(--red);border-color:var(--red)}.actions{margin-top:28px;border-top:1px solid #877e7238;display:flex;justify-content:space-between;gap:6px;padding-top:12px}.actions button{font-size:13px;padding:8px 0}.again{display:block;margin:24px auto 0;text-decoration:underline;text-underline-offset:6px;color:var(--sub);font-size:13px}.loading{padding:28px 0;font:17px/2 WenKai,KaiTi,serif}.error{color:var(--red);font-size:14px}.transition-sheet{position:fixed;inset:0;z-index:10;pointer-events:none;transform-origin:0 0}dialog{border:1px solid #877e7240;background:var(--paper);color:var(--ink);border-radius:6px;max-width:500px;width:90%;padding:24px}dialog::backdrop{background:#15141244}dialog p{font-size:14px}dialog pre{white-space:pre-wrap;font:14px/1.9 inherit;max-height:40svh;overflow:auto}#notice{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);font-size:12px;background:var(--paper);z-index:12;max-width:90%;text-align:center}
@media(max-height:700px){#home{padding-top:8px;min-height:560px}#home h1{font-size:30px;margin:8px 0}.q-wrap{margin-top:12px}body #question-input{min-height:100px}#cast-tools{bottom:6px}#cast-tools p,#cast-tools .micro{display:none}body .ritual-review{bottom:50px}body #question-anchor{top:74px}body #hex-close p{font-size:13px}}
@media(min-width:800px){#home h1{font-size:44px}#home .eyebrow{margin-top:25px}.q-wrap{margin-top:65px}body #question-anchor{left:calc(50% - 300px);width:600px}body #hex-close{left:calc(50% - 260px);width:520px}.summary{max-width:500px;margin-left:auto;margin-right:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* 阅读沿用舞台纸面出光，避免 WebGL 与 CSS 背景在切换时跳色。 */
body[data-page=reading] #stage{display:block!important}#reading{background:transparent}
.follow textarea{font-family:inherit;font-size:16px;line-height:1.9}dialog pre{font-family:inherit;font-size:14px;line-height:1.9}
body[data-page=ask] #stage{opacity:1}
