﻿:root{--bg:#edf0e9;--panel:#e3e8df;--text:#263e35;--muted:#52665b;--gold:#426451;--line:#42645130;--surface:#f4f5ef;--jade:#477363;--shadow:#193b2515;color-scheme:light}
:root[data-theme=night]{--bg:#101919;--panel:#172322;--text:#e6e9df;--muted:#a6b8ad;--gold:#c7ad7d;--line:#b8c8b52b;--surface:#182422;--jade:#a8c7af;--shadow:#0004;color-scheme:dark}
body{background:var(--bg);color:var(--text);background-image:none;transition:background-color .3s,color .3s}::selection{background:var(--jade);color:var(--bg)}html{scrollbar-color:var(--jade) var(--bg)}input{caret-color:var(--jade)}[hidden]{display:none!important}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}h1,h2,h3{text-wrap:balance}a{ text-underline-offset:5px}svg{display:block}button svg,.language svg,.back-link svg{width:20px;height:20px;flex-shrink:0}
.new-header{height:96px;border-color:var(--line)}.new-header .brand{color:var(--text);font-size:24px}.new-header .brand>svg{width:34px;height:34px}.brand-sub{font-size:10px;letter-spacing:2px}.new-header nav{color:var(--muted);gap:30px;font-size:12px}.header-controls{display:flex;gap:19px;align-items:center}.theme-control{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--line);border-radius:30px}.theme-control button{display:grid;place-items:center;width:37px;height:37px;min-width:37px;min-height:37px;padding:8px;border:0;color:var(--muted);background:none;border-radius:50%}.theme-control button[aria-pressed=true]{background:var(--text);color:var(--bg)}.theme-control button:hover{box-shadow:inset 0 0 0 1px var(--gold)}.theme-control svg{width:19px;height:19px}.language{border:0;border-radius:0;padding:8px 0;color:var(--text);gap:8px;min-width:48px}
.threshold{padding:45px 0 15px}.threshold-title{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:34px}.threshold-title h1{font-size:clamp(44px,4.1vw,61px);line-height:1.13;letter-spacing:-1.6px;max-width:580px}.threshold-title p{font-size:14px;white-space:pre-line;max-width:330px;line-height:1.9;margin-right:10px}.portals{display:grid;grid-template-columns:1fr 1fr;gap:24px}.portal{height:425px;border-radius:14px;position:relative;isolation:isolate;overflow:hidden;box-shadow:0 14px 32px var(--shadow);display:block;transition:box-shadow .3s}.portal:hover{box-shadow:0 18px 38px #1728192b}.east-portal{background:#dbe3d4;color:#254b3b}.east-portal:before{content:'';position:absolute;width:570px;height:570px;border:1px solid #254b3b12;border-radius:50%;left:-260px;top:20px;pointer-events:none}.east-portal:after{content:'';position:absolute;width:470px;height:470px;border:1px solid #254b3b12;border-radius:50%;left:350px;top:-240px;pointer-events:none}.portal-art{height:290px;position:relative;display:flex;justify-content:center;align-items:center;pointer-events:none}.east-art>svg{width:220px;color:#325946;position:relative;z-index:2;transform:rotate(-12deg);transition:transform .7s cubic-bezier(.16,1,.3,1)}.east-portal:hover .east-art>svg{transform:rotate(9deg)}.ink-arc{position:absolute;width:260px;height:260px;border:10px solid #324e3c15;border-left-color:transparent;border-right-color:transparent;border-radius:50%;transform:rotate(-30deg);opacity:.8}.arc-two{width:290px;height:225px;border-width:3px;transform:rotate(26deg);opacity:.7}.portal-copy{position:relative;z-index:3;padding:0 35px 26px}.portal-copy h2{font-size:32px;line-height:1.3;margin-bottom:9px;letter-spacing:-.6px}.portal-copy p{font-size:11px;color:#46634f;line-height:1.7}.portal-hanzi{position:absolute;right:27px;bottom:17px;font:115px/.95 var(--serif);color:#254b3b10;pointer-events:none}.portal-action{display:flex;align-items:center;gap:13px;font-size:12px;margin-top:22px}.portal-action svg{width:24px;height:20px}.west-portal{background:#211c34;color:#e6d6b5}.west-portal .portal-copy p{color:#c2b5ce}.west-portal .portal-hanzi{color:#e6d6b513}.west-art{overflow:hidden;background:radial-gradient(ellipse at center,#6d5a8c30,transparent 65%)}.west-art:after{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,#e5d5b3 1px,transparent 1px);background-size:81px 57px;opacity:.22}.west-art .celestial-disc{width:360px;height:360px;position:absolute;top:-25px;color:#b8a2cb;opacity:.45;transform:rotate(12deg)}.portal-card{width:102px;position:relative;z-index:1;transform:rotate(-9deg);box-shadow:6px 14px 22px #08051055;transition:transform .6s cubic-bezier(.16,1,.3,1)}.west-portal:hover .portal-card{transform:rotate(5deg)}.portal-card svg{width:100%}.threshold-foot{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--muted);gap:20px;margin-top:22px}.new-disclaimer{margin:22px auto 35px;max-width:850px;font-size:10px;color:var(--muted)}footer{padding:24px 0 22px}.footer-top .brand{color:var(--text);font-size:18px}.footer-bottom{margin-top:18px;color:var(--muted)}.fineprint{color:var(--muted)}.footer-top p{color:var(--muted)}
.ritual-page{padding:30px 0 0}.back-link{display:inline-flex;align-items:center;gap:9px;color:var(--muted);font-size:11px;min-height:44px}.back-link svg{transform:rotate(180deg);width:19px}.ritual-heading{text-align:center;margin:15px 0 33px}.ritual-heading h1{font-size:clamp(37px,4vw,52px);line-height:1.25;letter-spacing:-1px}.ritual-heading p{margin:13px auto 0;font-size:14px;max-width:590px}.liu-workspace{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:60px;margin:35px auto 40px;max-width:1050px}.liu-seal{position:relative;color:var(--jade);padding:20px}.liu-seal>svg{width:min(100%,290px);margin:auto}.six-palaces{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:25px;font:15px var(--serif);color:var(--muted);text-align:center}.liu-form-wrap{padding:30px 0}.liu-form-wrap>h2{font-size:31px;line-height:1.35;margin-bottom:13px}.liu-form-wrap>p{font-size:13px;max-width:480px;line-height:1.9;margin-bottom:26px}.lunar-inputs{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:12px}.lunar-inputs label{font-size:11px;color:var(--muted)}.lunar-inputs input,.lunar-inputs select{background:var(--surface);color:var(--text);border:1px solid var(--line);min-height:48px;padding:11px;margin-top:8px}.button{background:var(--text);color:var(--bg);border-color:var(--text);border-radius:5px;min-height:49px;padding:12px 22px;font-size:12px;gap:19px}.button:hover{background:var(--jade);border-color:var(--jade);color:var(--bg)}.button:disabled{opacity:.4;cursor:not-allowed}.liu-actions{display:flex;align-items:center;gap:24px;margin-top:23px}.text-button{background:none;border:0;color:var(--gold);font-size:12px;text-decoration:underline;text-underline-offset:5px;min-height:44px;padding:6px 0}.lunar-status{min-height:20px;margin-top:14px;font-size:11px;color:var(--muted)}.liu-result{border-top:1px solid var(--line);margin-top:20px;padding-top:25px;outline:none}.palace-result{display:flex;align-items:center;gap:21px}.palace-character{font:58px var(--serif);width:65px;flex-shrink:0;color:var(--jade)}.palace-result h2{font-size:29px;margin-bottom:10px}.palace-result p{font-size:13px;line-height:1.9}.palace-trace{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:17px 0;border-block:1px solid var(--line);margin-top:23px;font-size:10px;color:var(--muted)}.palace-trace strong{display:block;font:18px var(--serif);color:var(--text);margin-top:5px}.result-rule{font-size:10px;margin-top:13px;font-variant-numeric:tabular-nums}.result-disclaimer{font-size:10px;color:var(--muted);line-height:1.85;margin-top:20px}.ritual-disclaimer{max-width:800px;text-align:center;margin:20px auto 48px;font-size:11px;line-height:1.9}.ritual-faq{padding:25px 0 0;border-top:1px solid var(--line);margin-bottom:40px}.ritual-faq summary{color:var(--text)}.ritual-faq h2{font-size:28px}.ritual-faq p{color:var(--muted)}
.bagua-entrance{position:fixed;inset:0;z-index:10;background:transparent;pointer-events:none;overflow:hidden;color:var(--jade);animation:entrance-exit 1.65s forwards}.bagua-ghost,.bagua-solid{position:absolute;left:50%;top:50%;width:min(50vw,320px);pointer-events:none;will-change:transform,opacity}.bagua-ghost{animation:bagua-gather 1.5s cubic-bezier(.2,.7,.2,1) both;filter:blur(3px)}.bagua-solid{transform:translate(-50%,-50%);animation:bagua-condense 1.5s ease both}@keyframes bagua-gather{0%{opacity:0;transform:translate(calc(-50% + var(--gx)),calc(-50% + var(--gy))) rotate(var(--turn)) scale(1.4)}15%{opacity:.15}47%{opacity:.3;filter:blur(1px);transform:translate(-50%,-50%) rotate(180deg) scale(1)}63%{opacity:.08;transform:translate(-50%,-50%) rotate(225deg) scale(1)}100%{opacity:0;transform:translate(calc(-50% + var(--gx)),calc(-50% + var(--gy))) rotate(420deg) scale(1.4)}}@keyframes bagua-condense{0%,30%{opacity:0;filter:blur(6px);transform:translate(-50%,-50%) rotate(-20deg) scale(.7)}48%,62%{opacity:.8;filter:blur(0);transform:translate(-50%,-50%) rotate(0) scale(1)}100%{opacity:0;filter:blur(6px);transform:translate(-50%,-50%) rotate(30deg) scale(1.3)}}@keyframes entrance-exit{0%,90%{visibility:visible}100%{visibility:hidden}}
.tarot-workspace{max-width:980px;margin:auto}.disc-stage{max-width:540px;margin:0 auto 40px;position:relative;text-align:center}.celestial-disc{width:100%;color:#88709d}.orbit-line{fill:none;stroke:currentColor;stroke-width:.6;opacity:.45}.disc-boundary{fill:none;stroke:currentColor;stroke-width:.65;opacity:.4}.orbit-token{color:#927ca8;opacity:.2}.orbit-token rect{fill:var(--bg);stroke:currentColor;stroke-width:.9}.orbit-token path{fill:none;stroke:currentColor;stroke-width:.6}.orbit-token circle{fill:currentColor}.disc-center circle{fill:none;stroke:currentColor;stroke-width:.8;opacity:.4}.disc-center path{fill:currentColor;opacity:.3}.disc-stage .disc-ring{transform-origin:260px 260px;animation:ring-arrive .65s cubic-bezier(.16,1,.3,1) var(--ring-delay) both}.disc-stage .orbit-token{animation:token-light .26s ease-out var(--light-delay) both}.disc-stage>p{font-size:11px;margin:8px auto 0;max-width:470px}.disc-start{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);width:240px;display:flex;align-items:center;flex-direction:column}.disc-word{font:italic 23px var(--serif);background:var(--bg);padding:4px 10px}.disc-start .button{margin-top:19px;gap:12px}.disc-start .button svg{width:19px}@keyframes ring-arrive{from{transform:rotate(-32deg)}to{transform:rotate(0)}}@keyframes token-light{0%{opacity:.18;color:#88709d}60%{opacity:1;color:#d2b37d}100%{opacity:.95;color:var(--gold)}}
.ritual-steps{display:flex;justify-content:center;list-style:none;gap:0;margin:0 0 27px;padding:0;counter-reset:steps;font-size:11px;color:var(--muted)}.ritual-steps li{counter-increment:steps;display:flex;align-items:center;gap:8px}.ritual-steps li:before{content:counter(steps);border:1px solid var(--line);border-radius:50%;width:26px;height:26px;display:grid;place-items:center;font-variant-numeric:tabular-nums}.ritual-steps li+li:after{content:'';height:1px;width:32px;background:var(--line);order:-2;margin:0 16px}.ritual-steps li.active{color:var(--text)}.ritual-steps li.active:before{background:var(--text);color:var(--bg);border-color:var(--text)}#tarot-selection{outline:none;text-align:center;padding-top:20px}#tarot-stage-title{font-size:30px;line-height:1.4;margin-bottom:12px}#tarot-stage-note{font-size:13px;min-height:25px;line-height:1.8}.pile-options{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:700px;margin:30px auto 20px}.pile-button{position:relative;border:0;background:transparent;color:var(--text);padding:20px 15px;border-radius:12px;display:flex;flex-direction:column;align-items:center;transition:background .2s}.pile-button:hover{background:var(--panel)}.pile-stack{display:block;width:105px;height:158px;position:relative;flex-shrink:0;margin-bottom:30px}.pile-stack svg{position:absolute;width:100%;height:100%;left:0;top:0;filter:drop-shadow(4px 9px 8px #16102422)}.pile-stack svg:first-child{transform:rotate(-12deg) translateX(-8px)}.pile-stack svg:nth-child(2){transform:rotate(9deg) translateX(7px)}.pile-stack svg:last-child{transform:rotate(-2deg)}.pile-stack svg rect:first-child,.face-down svg rect:first-child{fill:#282037;stroke:#c5ad88;stroke-width:.75}.pile-stack svg rect:nth-child(2),.face-down svg rect:nth-child(2){fill:none;stroke:#b69c77;stroke-width:.6}.pile-stack svg circle,.pile-stack svg path,.face-down svg circle,.face-down svg path{fill:none;stroke:#b69c77;stroke-width:.6}.pile-stack svg path:nth-last-child(2),.face-down svg path:nth-last-child(2){fill:#c5ad88;stroke:none}.pile-button strong{font:24px var(--serif);margin-bottom:6px}.pile-button>span:not(.pile-stack){font-size:11px;color:var(--muted)}.pile-button>svg{width:22px;height:22px;margin-top:14px}.selection-actions{display:flex;justify-content:center;align-items:center;gap:25px;margin:22px 0 0}.card-options{display:grid;grid-template-columns:repeat(7,1fr);gap:15px;max-width:810px;margin:30px auto}.face-down{position:relative;background:none;border:0;padding:0;min-width:44px;border-radius:7px;transition:transform .2s}.face-down>svg{width:100%;aspect-ratio:2/3}.face-down:hover{transform:translateY(-5px)}.face-down[aria-pressed=true]{transform:translateY(-7px);outline:2px solid var(--gold);outline-offset:2px}.pick-order{position:absolute;top:8px;right:8px;background:#ddc99f;color:#231f2a;width:22px;height:22px;border-radius:50%;display:none;place-items:center;font:12px var(--sans)}.face-down[aria-pressed=true] .pick-order{display:grid}.card-index{display:block;font-size:10px;color:var(--muted);margin-top:4px}.tarot-reading{margin-top:35px;outline:none}.chosen-readings{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;max-width:800px;margin:0 auto}.chosen-reading{text-align:center}.reading-position{font:italic 17px var(--serif);color:var(--muted)}.revealed-card{margin:17px auto 22px;background:#f3eee2;color:#785b38;width:160px;border-radius:8px;padding:7px;box-shadow:4px 10px 23px #120d1526;animation:card-unveil .65s cubic-bezier(.16,1,.3,1) var(--reveal-delay) both}.revealed-card svg{width:100%;height:auto}.revealed-card>span{display:block;font:12px var(--serif);line-height:1.4;margin:0 0 10px}.chosen-reading h3{font-size:23px;margin-bottom:12px}.chosen-reading p{font-size:13px;line-height:1.85}.chosen-reading .card-theme{font-size:11px;color:var(--gold);margin-bottom:8px}.reading-close{font:italic 18px/1.7 var(--serif);text-align:center;max-width:650px;margin:35px auto 0}.tarot-reading>.result-disclaimer{text-align:center}.page-title h1{letter-spacing:-1px}.faq summary{color:var(--text)}.reading-panel input,.reading-panel select{background:var(--bg);color:var(--text)}@keyframes card-unveil{from{opacity:.1;transform:perspective(800px) rotateY(95deg)}to{opacity:1;transform:perspective(800px) rotateY(0)}}
@media(min-width:1500px){.portal{height:460px}.portal-art{height:315px}.threshold{padding-top:55px}.east-art>svg{width:245px}}
@media(max-width:1000px){.new-header nav{display:none}.threshold-title h1{font-size:48px}.threshold-title p{max-width:270px;font-size:12px}.portal{height:395px}.portal-art{height:255px}.portal-copy{padding:0 25px 25px}.portal-copy h2{font-size:28px}.portal-copy p{font-size:10px}.liu-workspace{gap:35px}.liu-form-wrap>h2{font-size:28px}.lunar-inputs{grid-template-columns:1fr 1fr}.lunar-inputs label:last-child{grid-column:1/-1}.card-options{grid-template-columns:repeat(6,1fr)}.chosen-readings{gap:23px}.ritual-heading{margin-top:12px}}
@media(max-width:760px){.new-header{height:84px}.new-header .brand{font-size:21px;gap:7px}.new-header .brand>svg{width:26px;height:26px}.new-header .brand-sub{font-size:9px;letter-spacing:1.4px}.header-controls{gap:11px}.theme-control button{width:31px;height:37px;min-width:31px}.theme-control{gap:0}.language{font-size:11px;gap:5px}.language svg{width:17px}.threshold{padding-top:29px}.threshold-title{display:block;text-align:center;margin-bottom:27px}.threshold-title h1{font-size:43px;letter-spacing:-1px;max-width:600px;margin:auto}.threshold-title p{margin:17px auto 0;max-width:450px;font-size:12px;line-height:1.9}.portals{gap:15px}.portal{height:320px}.portal-art{height:190px}.east-art>svg{width:148px}.ink-arc{width:176px;height:176px;border-width:6px}.arc-two{width:182px;height:160px;border-width:2px}.portal-copy{padding:0 19px 17px}.portal-copy h2{font-size:25px;line-height:1.3}.portal-copy p{font-size:10px;line-height:1.8;min-height:35px}.portal-action{font-size:10px;gap:8px;margin-top:15px}.portal-hanzi{font-size:80px;right:16px;bottom:10px}.west-art .celestial-disc{width:245px;height:245px;top:-28px}.portal-card{width:70px}.threshold-foot{font-size:9px;gap:10px;align-items:start}.new-disclaimer{margin-top:20px;font-size:10px}.liu-workspace{grid-template-columns:1fr;gap:0;margin-top:0}.liu-seal{max-width:300px;width:100%;margin:auto;padding:0}.liu-seal>svg{width:200px}.six-palaces{margin-top:16px;font-size:13px;gap:8px}.liu-form-wrap{padding:28px 5px 10px;max-width:520px;width:100%;margin:auto}.liu-form-wrap>h2{font-size:27px}.lunar-inputs{grid-template-columns:1fr 1fr 1.5fr;gap:9px}.lunar-inputs label:last-child{grid-column:auto}.lunar-inputs input,.lunar-inputs select{font-size:13px;padding:10px 8px}.ritual-heading h1{font-size:36px}.ritual-heading p{font-size:12px}.ritual-page{padding-top:20px}.ritual-heading{margin:17px 0 28px}.ritual-disclaimer{font-size:10px;margin-bottom:25px}.ritual-faq{margin-top:20px}.disc-stage{width:95%;max-width:470px;margin-bottom:25px}.disc-start{width:200px}.disc-word{font-size:20px}.disc-start .button{font-size:11px;padding:10px 15px;min-height:45px}.disc-stage>p{font-size:10px}.ritual-steps{font-size:10px;margin-bottom:20px}.ritual-steps li{gap:6px}.ritual-steps li:before{width:23px;height:23px}.ritual-steps li+li:after{width:16px;margin:0 9px}#tarot-stage-title{font-size:26px}#tarot-stage-note{font-size:12px}.pile-options{gap:10px;margin-top:20px}.pile-button{padding:18px 4px}.pile-stack{width:78px;height:117px;margin-bottom:22px}.pile-button strong{font-size:21px}.card-options{grid-template-columns:repeat(5,1fr);gap:11px}.chosen-readings{gap:18px}.revealed-card{width:100%;max-width:145px}.chosen-reading h3{font-size:21px}.chosen-reading p{font-size:12px}.reading-close{font-size:16px}}
@media(max-width:480px){.new-header .brand{font-size:19px}.brand-sub{letter-spacing:1px}.new-header .brand>svg{width:22px}.header-controls{gap:8px}.theme-control{padding:2px}.theme-control button{width:29px;min-width:29px;height:35px;padding:7px}.language{min-width:36px}.language svg{display:none}.threshold-title h1{font-size:39px;line-height:1.17}.portals{grid-template-columns:1fr;gap:17px}.portal{height:290px}.portal-art{height:180px;position:absolute;right:-5px;top:18px;width:200px}.east-art>svg{width:155px}.west-art{height:220px;width:220px;right:-21px;top:-6px}.west-art .celestial-disc{width:245px;top:-8px}.portal-card{width:72px}.portal-copy{position:absolute;bottom:22px;left:22px;right:15px;padding:0}.portal-copy h2{font-size:31px;max-width:250px}.portal-copy p{font-size:10px;min-height:0}.portal-action{font-size:11px;margin-top:16px}.portal-hanzi{left:3px;bottom:130px;font-size:74px;right:auto;color:#254b3b20}.west-portal .portal-hanzi{color:#e6d6b524}.threshold-foot{flex-direction:column;gap:5px;margin-top:17px}.threshold{padding-bottom:0}.new-disclaimer{margin-bottom:22px}.card-options{grid-template-columns:repeat(4,1fr);gap:12px}.pick-order{width:20px;height:20px;top:6px;right:6px}.chosen-readings{grid-template-columns:1fr;gap:30px}.chosen-reading{display:grid;grid-template-columns:110px 1fr;text-align:left;gap:0 20px}.reading-position{grid-column:2;font-size:14px;margin-bottom:9px}.revealed-card{grid-column:1;grid-row:1/5;margin:0;width:110px}.chosen-reading h3{grid-column:2;line-height:1.3;margin-bottom:8px}.chosen-reading p{grid-column:2}.revealed-card>span{font-size:10px}.palace-result{gap:13px}.palace-character{font-size:48px;width:51px}.palace-result p{font-size:12px}.liu-actions{gap:21px}.liu-form-wrap>h2{font-size:25px}.ritual-steps{font-size:9px}.ritual-steps li:before{width:21px;height:21px}.ritual-steps li+li:after{width:8px;margin:0 7px}.disc-start{top:45%}.disc-word{font-size:18px}.disc-start .button{font-size:10px;min-height:40px;padding:8px 12px;margin-top:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.bagua-entrance{display:none}.disc-stage .orbit-token{opacity:.95;color:var(--gold)}}
.theme-control button{width:44px;min-width:44px;height:44px;min-height:44px}.language{min-width:44px;min-height:44px}@media(max-width:480px){.theme-control button{width:37px;min-width:37px;height:44px;min-height:44px}.header-controls{gap:7px}}

