:root{--green:#143c2d;--green-deep:#0d2b20;--green-soft:#245441;--orange:#da8134;--orange-dark:#b96524;--white:#fff;--paper:#f7f1e3;--paper-deep:#ece2cc;--gold:#c9a963;--gold-light:#e7d8ad;--ink:#18251f;--muted:#626d65;--danger:#a83e35;--shadow:0 24px 70px #081f1624;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 12% 8%, #da81341a, transparent 25rem), linear-gradient(180deg, #fcfaf4 0%, var(--paper) 48%, #efe5d2 100%);color:var(--ink);min-width:320px;margin:0;font-family:PingFang HK,PingFang TC,Noto Sans TC,Microsoft JhengHei,system-ui,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}::selection{background:#da81343d}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.siteShell{min-height:100vh;overflow:hidden}.topbar{z-index:5;justify-content:space-between;align-items:center;max-width:76rem;margin:0 auto;padding:22px 24px;display:flex;position:relative}.brand,.footerBrand{letter-spacing:.16em;align-items:center;gap:10px;font-family:Songti TC,Noto Serif TC,PMingLiU,serif;font-size:1.28rem;font-weight:700;text-decoration:none;display:inline-flex}.brandSeal{background:var(--green);border:1px solid var(--gold);color:var(--gold-light);letter-spacing:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.84rem;display:inline-flex;position:relative;transform:rotate(-3deg)}.brandSeal:after{content:"";border:1px solid #ffffff52;position:absolute;inset:3px}.modeSwitch{background:#143c2d12;border:1px solid #143c2d24;border-radius:12px;padding:4px;display:flex}.modeSwitch button{color:var(--muted);background:0 0;border:0;border-radius:8px;min-height:38px;padding:0 15px;font-size:.88rem}.modeSwitch button[aria-pressed=true]{background:var(--green);color:var(--white);box-shadow:0 4px 15px #143c2d2e}.hero{text-align:center;max-width:76rem;margin:0 auto;padding:88px 24px 74px;position:relative}.hero:before,.hero:after{content:"";z-index:-1;border:1px solid #c9a9638c;border-radius:50%;width:290px;height:290px;position:absolute;top:12px}.hero:before{left:-190px}.hero:after{right:-190px}.hero h1{color:var(--green);letter-spacing:.12em;text-wrap:balance;margin:0;font-family:Songti TC,Noto Serif TC,PMingLiU,serif;font-size:clamp(2.35rem,8vw,5.8rem);font-weight:700;line-height:1.15}.heroIntro{color:var(--muted);letter-spacing:.05em;max-width:34rem;margin:38px auto 0;font-size:.98rem;line-height:1.8}.drawPanel{box-shadow:var(--shadow);color:var(--white);background:linear-gradient(#143c2df7,#0d2b20fb),repeating-linear-gradient(45deg,#0000,#0000 10px,#ffffff05 10px 11px);border:1px solid #c9a96370;max-width:72rem;margin:0 auto;padding:clamp(32px,6vw,70px);position:relative}.drawPanel:before,.drawPanel:after{border-color:var(--gold);content:"";border-style:solid;width:32px;height:32px;position:absolute}.drawPanel:before{border-width:1px 0 0 1px;top:14px;left:14px}.drawPanel:after{border-width:0 1px 1px 0;bottom:14px;right:14px}.stepBlock+.stepBlock{margin-top:0}.stepHeading{align-items:center;gap:18px;margin-bottom:26px;display:flex}.stepHeading>span{border:1px solid var(--gold);color:var(--gold-light);flex:0 0 44px;justify-content:center;align-items:center;height:44px;font-family:Songti TC,Noto Serif TC,serif;display:inline-flex}.stepHeading p,.stepHeading h2{margin:0}.stepHeading p{color:var(--gold-light);letter-spacing:.24em;margin-bottom:5px;font-size:.7rem}.stepHeading h2{letter-spacing:.08em;font-family:Songti TC,Noto Serif TC,PMingLiU,serif;font-size:clamp(1.25rem,3vw,1.7rem);font-weight:600}.choiceFieldset{border:0;margin:0;padding:0}.templeGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.templeCard{background:#ffffff0e;border:1px solid #fff3;align-items:center;min-height:118px;padding:22px 20px;transition:border-color .18s,background .18s,transform .18s;display:flex;position:relative}.templeCard:hover{border-color:var(--gold);transform:translateY(-2px)}.templeCard.isSelected{border-color:var(--gold);background:#da813426}.templeCard input,.categoryCard input{opacity:0;width:1px;height:1px;position:absolute}.templeSeal{color:var(--gold-light);writing-mode:vertical-rl;border:1px solid #c9a9638c;flex:0 0 46px;justify-content:center;align-items:center;height:46px;margin-right:15px;font-family:Songti TC,Noto Serif TC,serif;font-size:.8rem;display:inline-flex}.templeCard strong{letter-spacing:.08em;font-family:Songti TC,Noto Serif TC,serif;font-size:1.16rem;font-weight:600}.templeCard small{color:#ffffff94;letter-spacing:.12em;font-size:.7rem;position:absolute;bottom:17px;left:81px}.checkMark{background:var(--orange);color:var(--white);opacity:0;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.7rem;transition:all .16s;display:flex;position:absolute;top:13px;right:13px;transform:scale(.5)}.templeCard.isSelected .checkMark{opacity:1;transform:scale(1)}.ornamentRule{justify-content:center;align-items:center;margin:44px 0;display:flex}.ornamentRule:before,.ornamentRule:after{content:"";background:linear-gradient(90deg,#0000,#c9a9637a);width:38%;height:1px}.ornamentRule:after{background:linear-gradient(90deg,#c9a9637a,#0000)}.ornamentRule span{border:1px solid var(--gold);width:8px;height:8px;margin:0 16px;transform:rotate(45deg)}.categoryGrid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.categoryCard{background:#ffffff0b;border:1px solid #ffffff2b;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:92px;padding:14px 8px;transition:border-color .16s,background .16s,transform .16s;display:flex;position:relative}.categoryCard:hover{border-color:var(--gold);transform:translateY(-2px)}.categoryCard.isSelected{background:var(--paper);border-color:var(--gold);color:var(--green)}.categoryCard>span{opacity:.78;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-family:Songti TC,Noto Serif TC,serif;font-size:.78rem;display:inline-flex}.categoryCard strong{letter-spacing:.08em;font-size:.88rem}.privacyNote{border-left:2px solid var(--gold);background:#00000021;align-items:center;gap:12px;max-width:43rem;margin:30px auto 0;padding:12px 16px;display:flex}.privacyNote span{color:var(--gold-light);border:1px solid #c9a963a6;flex:0 0 28px;justify-content:center;align-items:center;height:28px;font-family:Songti TC,serif;display:flex}.privacyNote p{color:#ffffffc2;margin:0;font-size:.78rem;line-height:1.6}.ritualIntro{color:var(--gold-light);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;max-width:32rem;margin:28px auto 0;display:flex}.ritualIntro i{background:#c9a96380;width:24px;height:1px}.ritualIntro span{letter-spacing:.12em;font-family:Songti TC,serif;font-size:.82rem}.ritualIntro p{color:#ffffffa8;text-align:center;flex-basis:100%;margin:3px 0 0;font-size:.78rem}.primaryButton,.secondaryButton,.textButton{min-height:48px}.primaryButton{background:var(--orange);color:var(--white);letter-spacing:.09em;border:1px solid #f0ac68;justify-content:center;align-items:center;gap:10px;width:100%;max-width:31rem;margin:28px auto 0;padding:15px 24px;font-size:clamp(.96rem,2vw,1.08rem);font-weight:700;transition:background .16s,transform .16s,box-shadow .16s;display:flex;box-shadow:0 11px 26px #0003,inset 0 1px #ffffff47}.primaryButton:hover{background:#e28b3f;transform:translateY(-2px);box-shadow:0 14px 32px #00000042}.secondaryButton{background:var(--green);border:1px solid var(--green);color:var(--white);letter-spacing:.05em;padding:12px 22px;font-weight:700}.secondaryButton:hover{background:var(--green-soft)}.textButton{color:inherit;text-underline-offset:5px;background:0 0;border:0;-webkit-text-decoration:underline #c9a963bf;text-decoration:underline #c9a963bf}.errorMessage{color:#ffd3cb;text-align:center;margin:14px 0 0;font-size:.84rem}.liveStatus{color:#ffffffad;text-align:center;min-height:1.3em;margin:16px 0 0;font-size:.76rem}.ritualPanel,.pauseMessage{background:var(--paper);border:1px solid var(--gold);color:var(--ink);text-align:center;flex-direction:column;align-items:center;max-width:38rem;margin:30px auto 0;padding:32px 24px;display:flex}.ritualPanel h2,.pauseMessage h2{color:var(--green);letter-spacing:.12em;margin:18px 0 6px;font-family:Songti TC,serif}.ritualPanel p,.pauseMessage p{color:var(--muted);margin:0 0 14px;line-height:1.7}.fortuneTube{background:var(--orange);border:2px solid var(--gold-light);transform-origin:50% 95%;justify-content:center;align-items:flex-start;width:78px;height:120px;padding-top:9px;animation:.7s ease-in-out infinite shakeTube;display:flex;position:relative}.fortuneTube>span{background:#d9b875;border:1px solid #96733f;width:9px;height:88px;margin:-25px -4px 0;transform:rotate(-8deg)}.fortuneTube>span:nth-child(2){transform:rotate(2deg)}.fortuneTube>span:nth-child(3){transform:rotate(9deg)}.fortuneTube strong{color:var(--white);font-family:Songti TC,serif;font-size:1.5rem;position:absolute;bottom:22px;left:0;right:0}.blockPair{gap:16px;min-height:72px;display:flex}.blockPair span{background:var(--orange);border:2px solid #9f551d;border-radius:42px 9px 9px 42px;width:31px;height:64px;display:block;transform:rotate(-15deg);box-shadow:inset 0 2px #ffffff47}.blockPair span:nth-child(2){border-radius:9px 42px 42px 9px;transform:rotate(15deg)}.blockPair span.laughing:nth-child(2){transform:rotate(-165deg)}.blockPair span.yin:first-child{transform:rotate(165deg)}.pauseMessage>span{border:1px solid var(--gold);color:var(--green);justify-content:center;align-items:center;width:50px;height:50px;font-family:Songti TC,serif;display:flex}.resultSection{max-width:72rem;margin:0 auto;padding:100px 24px 70px}.resultSection:focus{outline:none}.resultTopline{color:var(--green);letter-spacing:.16em;justify-content:center;align-items:center;gap:13px;margin-bottom:22px;font-size:.78rem;font-weight:700;display:flex}.resultTopline span:nth-child(2){color:var(--gold);font-size:.55rem}.fortunePaper{box-shadow:var(--shadow);text-align:center;background:linear-gradient(#ffffffc2,#ffffffc2),repeating-linear-gradient(0deg,#0000 0 31px,#143c2d09 31px 32px);border:1px solid #c9a963b3;padding:clamp(30px,7vw,78px);position:relative}.fortunePaper:before,.fortunePaper:after{background:var(--orange);content:"";width:50px;height:4px;position:absolute;left:50%;transform:translate(-50%)}.fortunePaper:before{top:0}.fortunePaper:after{bottom:0}.fortuneNumber{color:var(--green);justify-content:center;align-items:baseline;display:flex}.fortuneNumber strong{letter-spacing:-.04em;margin:0 10px;font-family:Songti TC,Noto Serif TC,serif;font-size:clamp(4rem,12vw,7.5rem);font-weight:400;line-height:1}.fortuneNumber small{color:var(--muted);letter-spacing:.18em;font-size:.8rem}.gradeBadge,.statusBadge,.variantBadge{border:1px solid var(--gold);color:var(--orange-dark);letter-spacing:.16em;margin-top:14px;padding:6px 10px;font-size:.74rem;font-weight:700;display:inline-block}.fortuneTitle{color:var(--muted);letter-spacing:.12em;margin:18px 0 0;font-family:Songti TC,serif;font-size:.94rem}.variantBadge{background:#da813414;margin-top:24px}.poem{color:var(--green);letter-spacing:.08em;border:0;max-width:43rem;margin:46px auto;padding:0;font-family:Songti TC,Noto Serif TC,PMingLiU,serif;font-size:clamp(1.3rem,4vw,2rem);line-height:1.8}.poem p{margin:0}.interpretationGrid{text-align:left;border-top:1px solid #143c2d21;grid-template-columns:1fr 1fr;gap:0;margin-top:36px;display:grid}.interpretationGrid article{padding:34px 34px 20px}.interpretationGrid article+article{border-left:1px solid #143c2d21}.interpretationGrid span,.actionCard span,.goodAction>span{color:var(--orange-dark);letter-spacing:.13em;margin-bottom:12px;font-size:.72rem;font-weight:700;display:block}.interpretationGrid p,.actionCard p,.pendingResult p{color:#3b4941;margin:0;font-size:.94rem;line-height:1.95}.actionCard{background:var(--green);color:var(--white);text-align:left;grid-template-columns:1fr 1fr;gap:1px;margin:38px 0 0;display:grid}.actionCard>div{padding:28px 30px}.actionCard>div+div{border-left:1px solid #ffffff24}.actionCard span{color:var(--gold-light)}.actionCard p{color:#ffffffe6}.resultMotto{flex-direction:column;align-items:center;margin:52px 0 36px;display:flex}.resultMotto strong{color:var(--green);letter-spacing:.14em;font-family:Songti TC,serif;font-size:clamp(1.28rem,4vw,2rem)}.resultMotto span{color:var(--orange-dark);letter-spacing:.15em;margin-top:11px;font-size:.84rem}.resultMotto .goodwillGlow{color:var(--gold);letter-spacing:.14em;text-shadow:0 0 .35rem #e1b75d8c,0 0 1rem #da81344d;will-change:transform, opacity, text-shadow;font-size:clamp(.96rem,2.5vw,1.18rem);font-weight:800;animation:.9s ease-in-out 3 goodwill-pulse;display:block}.resultActions{justify-content:center;align-items:center;gap:18px;display:flex}.resultActions .secondaryButton{min-width:150px}.sourceDetails{color:var(--muted);text-align:left;border-top:1px solid #143c2d1f;margin-top:40px;padding-top:20px;font-size:.76rem;line-height:1.7}.sourceDetails summary{cursor:pointer;text-align:center;font-weight:700}.sourceDetails a{color:var(--orange-dark);font-weight:700}.pendingResult{max-width:43rem;margin:38px auto 0}.pendingResult h2{color:var(--green);letter-spacing:.08em;margin:24px 0 16px;font-family:Songti TC,serif;font-size:1.5rem}.collationNote{border-left:2px solid var(--orange);text-align:left;background:#da813412;padding:16px 18px;margin-top:20px!important}.goodAction{border:1px solid #c9a963b3;margin-top:30px;padding:26px}.goodAction strong{color:var(--green);margin-bottom:10px;font-family:Songti TC,serif;font-size:1.3rem;display:block}.ethicsSection{background:var(--orange);color:var(--white);align-items:center;gap:28px;max-width:72rem;margin:30px auto 0;padding:38px clamp(24px,6vw,64px);display:flex}.ethicsMark{border:1px solid #ffffffa6;flex:0 0 62px;justify-content:center;align-items:center;height:62px;font-family:Songti TC,serif;font-size:1.6rem;display:flex}.ethicsSection p,.ethicsSection h2{margin:0}.ethicsSection p{letter-spacing:.16em;opacity:.78;margin-bottom:7px;font-size:.72rem}.ethicsSection h2{letter-spacing:.06em;font-family:Songti TC,serif;font-size:clamp(1.1rem,3vw,1.5rem);font-weight:600}footer{grid-template-columns:auto 1fr auto;align-items:center;gap:28px;max-width:76rem;margin:0 auto;padding:52px 24px 65px;display:grid}footer p{color:var(--muted);max-width:42rem;margin:0;font-size:.7rem;line-height:1.75}footer small{color:var(--green);letter-spacing:.12em;text-align:right;font-family:Songti TC,serif}.footerGoodwill{color:var(--gold);letter-spacing:.12em;text-align:center;text-shadow:0 0 .65rem #c9a96347;grid-column:1/-1;justify-self:center;font-family:Songti TC,Noto Serif TC,serif;font-size:clamp(1rem,3vw,1.2rem);display:block}.redrawDialog{background:var(--paper);border:1px solid var(--gold);color:var(--ink);text-align:center;width:calc(100% - 32px);max-width:32rem;padding:34px;box-shadow:0 28px 90px #0000004d}.redrawDialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#081c14bd}.dialogSeal{border:1px solid var(--gold);color:var(--orange-dark);justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto;font-family:Songti TC,serif;display:flex}.redrawDialog h2{color:var(--green);letter-spacing:.08em;font-family:Songti TC,serif}.redrawDialog p{color:var(--muted);line-height:1.8}.redrawDialog>div{justify-content:center;gap:12px;margin-top:24px;display:flex}.srOnly{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes shakeTube{0%,to{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}@keyframes goodwill-pulse{0%,to{opacity:.82;transform:scale(1)}50%{opacity:1;text-shadow:0 0 .6rem #ffe08bd9,0 0 1.5rem #da813499;transform:scale(1.035)}}@media (width<=780px){.topbar{padding:18px 16px}.brand{letter-spacing:.08em;font-size:1.05rem}.brandSeal{width:30px;height:30px}.modeSwitch button{padding:0 10px;font-size:.74rem}.hero{padding:62px 18px 52px}.hero h1{letter-spacing:.06em}.drawPanel{border-left:0;border-right:0;padding:38px 18px}.templeGrid{grid-template-columns:1fr}.templeCard{min-height:88px}.categoryGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.categoryCard{min-height:82px}.interpretationGrid,.actionCard{grid-template-columns:1fr}.interpretationGrid article{padding:28px 8px 18px}.interpretationGrid article+article,.actionCard>div+div{border-top:1px solid #143c2d21;border-left:0}.actionCard>div+div{border-top-color:#ffffff24}.fortunePaper{padding:36px 20px}.poem{letter-spacing:.04em;margin:36px auto;font-size:1.25rem}.resultMotto strong{letter-spacing:.07em}.resultActions{flex-direction:column}.resultActions>*{width:100%}.ethicsSection{align-items:flex-start}footer{grid-template-columns:1fr;align-items:start}footer small{text-align:left}.redrawDialog>div{flex-direction:column-reverse}}@media (width<=390px){.modeSwitch{gap:2px}.modeSwitch button{padding:0 7px}.categoryGrid{gap:7px}.categoryCard strong{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.goodwillGlow{will-change:auto;animation:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
