:root{--bg:#08080d;--bg-2:#0d0d16;--surface:#12121d;--ink:#eae6f5;--ink-dim:#9a94b3;--ink-faint:#8b85a3;--cyan:#35e6d0;--magenta:#ff5ca8;--violet:#8b7bff;--line:#201d31;--glow-cyan:rgba(53,230,208,0.35);--glow-mag:rgba(255,92,168,0.3);--font-display:ui-monospace,"SF Mono","JetBrains Mono","Cascadia Code",Menlo,monospace;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--radius:16px}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background:radial-gradient(1200px 700px at 50% -10%,rgba(139,123,255,.16),transparent 60%),radial-gradient(900px 600px at 90% 110%,rgba(255,92,168,.1),transparent 55%),var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}.wrap,body{min-height:100dvh}.wrap{max-width:560px;margin:0 auto;padding:clamp(20px,6vh,64px) 20px 80px;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--cyan);opacity:.85}.eyebrow,h1{font-family:var(--font-display)}h1{font-weight:600;font-size:clamp(28px,8vw,42px);line-height:1.08;letter-spacing:-.01em;text-wrap:balance;margin:14px 0 10px}h1 .grad{background:linear-gradient(100deg,var(--cyan),var(--violet) 60%,var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent}.sub{color:var(--ink-dim);font-size:15px;line-height:1.5;max-width:44ch}.field{margin-top:28px;display:flex;flex-direction:column;gap:12px}.addr-input{width:100%;padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);font-family:var(--font-display);font-size:16px;outline:none;transition:border-color .2s,box-shadow .2s}.addr-input::placeholder{color:var(--ink-faint)}.addr-input:focus{box-shadow:0 0 0 3px var(--glow-cyan)}.addr-input.ok,.addr-input:focus{border-color:var(--cyan)}.cta{width:100%;padding:16px 18px;border:none;border-radius:var(--radius);background:linear-gradient(100deg,var(--cyan),var(--violet));color:#06060b;font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.02em;cursor:pointer;transition:transform .12s,box-shadow .2s,opacity .2s;box-shadow:0 8px 30px -8px var(--glow-cyan)}.cta:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 40px -8px var(--glow-cyan)}.cta:active:not(:disabled){transform:translateY(0)}.cta:disabled{opacity:.5;cursor:not-allowed}.linkbtn{background:none;border:none;color:var(--ink-dim);font-family:var(--font-display);font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;align-self:center}.linkbtn:hover{color:var(--cyan)}.err{color:var(--magenta);font-size:13px;font-family:var(--font-display);min-height:1em}.ritual{display:flex;flex-direction:column;align-items:center;gap:24px;padding:40px 0}.starwheel{width:132px;height:132px;border-radius:50%;border:1px solid var(--line);position:relative;background:radial-gradient(circle at 50% 50%,rgba(53,230,208,.12),transparent 70%);animation:spin 3.2s linear infinite}.starwheel:after,.starwheel:before{content:"";position:absolute;inset:14px;border-radius:50%;border-left:1px solid transparent;border-bottom:1px solid transparent;border-top:1px solid transparent;border-top-color:var(--cyan);border-right:1px solid transparent;border-right-color:var(--magenta)}.starwheel:after{inset:32px;border-top-color:var(--violet);animation:spin 1.8s linear infinite reverse}.starwheel .core{position:absolute;inset:0;margin:auto;width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 18px 4px var(--glow-cyan)}@keyframes spin{to{transform:rotate(1turn)}}.ritual-caption{font-family:var(--font-display);color:var(--cyan);font-size:14px;letter-spacing:.08em}.fragments{display:flex;flex-direction:column;gap:6px;align-items:center;min-height:66px}.fragment{font-family:var(--font-display);color:var(--ink-dim);font-size:12.5px;opacity:0;animation:fragIn .5s forwards}@keyframes fragIn{0%{opacity:0;transform:translateY(6px)}to{opacity:.9;transform:none}}.card{position:relative;border:1px solid var(--line);border-radius:22px;padding:30px 24px 22px;background:linear-gradient(160deg,var(--bg-2),#0a0a12);overflow:hidden;animation:cardIn .6s cubic-bezier(.2,.9,.2,1)}.card:before{background:radial-gradient(500px 200px at 80% -10%,var(--glow-mag),transparent 60%)}.card:before,.has-art:after{content:"";position:absolute;inset:0;pointer-events:none}.has-art:after{z-index:0;border-radius:inherit;background-image:linear-gradient(180deg,rgba(8,8,13,.5) 0,rgba(8,8,13,.84) 55%,rgba(8,8,13,.96) 100%),var(--art);background-size:cover;background-position:top}.has-art>*{position:relative;z-index:1}.ink .has-art:after{background-image:linear-gradient(180deg,rgba(233,228,214,.7) 0,rgba(233,228,214,.9) 60%,rgba(233,228,214,.97) 100%),var(--art)}@keyframes cardIn{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}.card .rarity-tag{font-family:var(--font-display);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim)}.card .rarity-tag[data-r=epic]{color:var(--violet)}.card .rarity-tag[data-r=legendary]{color:var(--cyan)}.card .rarity-tag[data-r=mythic]{color:var(--magenta);text-shadow:0 0 14px var(--glow-mag)}.arch-name{font-weight:700;font-size:clamp(30px,9vw,44px);line-height:1.02;letter-spacing:-.02em;margin:10px 0 4px;background:linear-gradient(100deg,var(--cyan),var(--violet) 55%,var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent}.arch-name,.arch-name-zh{font-family:var(--font-display)}.arch-name-zh{color:var(--ink-dim);font-size:15px;letter-spacing:.24em}.roast{font-size:17px;line-height:1.5;margin:18px 0;color:var(--ink)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.tag{font-family:var(--font-display);font-size:11.5px;color:var(--ink-dim);border:1px solid var(--line);padding:5px 10px;background:rgba(255,255,255,.02)}.rarity-bar,.tag{border-radius:999px}.rarity-bar{height:4px;background:var(--line);margin-top:18px;overflow:hidden}.rarity-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--magenta))}.reveal{margin-top:24px;display:flex;flex-direction:column;gap:14px}.block{font-size:15.5px;line-height:1.55;color:var(--ink);opacity:0;animation:blockIn .6s forwards}@keyframes blockIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.why{font-family:var(--font-display);font-size:13px;color:var(--ink-dim);border-left:2px solid var(--line);padding-left:10px;margin-top:2px}.sharebar{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}.share{flex:1 1 auto;min-width:96px;padding:12px;text-align:center;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-family:var(--font-display);font-size:13px;cursor:pointer;transition:border-color .15s,color .15s}.share:hover{border-color:var(--cyan);color:var(--cyan)}.disclaimer{margin-top:22px;text-align:center;color:var(--ink-dim);font-family:var(--font-display);font-size:13px;letter-spacing:.03em}.footer-note{margin-top:10px;text-align:center;color:var(--ink-faint);font-size:11px}.examples{margin-top:18px;display:flex;flex-direction:column;gap:8px}.examples-label{font-size:12.5px;color:var(--ink-dim)}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-dim);font-family:var(--font-display);font-size:12.5px;cursor:pointer;transition:border-color .15s,color .15s}.chip:hover{border-color:var(--cyan);color:var(--cyan)}.cross-line{display:block;margin-top:22px;text-align:center;text-decoration:none;padding:13px;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-dim);font-size:13.5px;transition:border-color .15s,color .15s}.cross-line b{color:var(--cyan);font-weight:600}.cross-line:hover{border-color:var(--cyan);color:var(--ink)}.fb{margin-top:20px;padding:14px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.fb-q{font-size:14px;color:var(--ink-dim)}.fb-btns{display:flex;gap:8px}.fb-btn{padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:var(--bg-2);color:var(--ink-dim);font-family:var(--font-display);font-size:13px;cursor:pointer;transition:border-color .15s,color .15s}.fb-yes:hover{border-color:var(--cyan);color:var(--cyan)}.fb-no:hover{border-color:var(--magenta);color:var(--magenta)}.fb-thanks{margin-top:20px;text-align:center;color:var(--ink-dim);font-size:13.5px}.mint{margin-top:16px;display:flex;flex-direction:column;gap:8px}.mint-btn{width:100%;padding:15px;border-radius:var(--radius);border:1px solid var(--violet);background:color-mix(in srgb,var(--violet) 14%,transparent);color:var(--ink);font-family:var(--font-display);font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.mint-btn:hover:not(:disabled){background:color-mix(in srgb,var(--violet) 24%,transparent)}.mint-btn:disabled{opacity:.6;cursor:default}.mint-note{text-align:center;color:var(--ink-faint);font-size:11px}.mint-err{text-align:center;color:var(--magenta);font-size:12.5px}.mint-done{margin-top:16px;text-align:center;color:var(--cyan);font-family:var(--font-display);font-size:14px}.mint-link{color:var(--cyan);text-decoration:underline;text-underline-offset:3px}.memory{font-family:var(--font-display);font-size:12px;color:var(--cyan);opacity:.85;margin-top:4px;letter-spacing:.03em}.oc{margin-top:16px;gap:14px}.oc,.oc-birth{display:flex;flex-direction:column}.oc-birth{padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,var(--surface),var(--bg-2));gap:8px}.oc-eyebrow{font-family:var(--font-display);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--cyan);opacity:.85}.oc-birth-main{display:flex;align-items:baseline;gap:12px}.oc-date{font-family:var(--font-display);font-size:26px;font-weight:600;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.oc-chain{font-family:var(--font-display);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--violet);border:1px solid var(--line);border-radius:999px;padding:3px 10px}.oc-basis{font-size:13.5px;line-height:1.5;color:var(--ink-dim)}.oc-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}.oc-metric{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);display:flex;flex-direction:column;gap:6px}.oc-label{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.oc-label,.oc-value{font-family:var(--font-display)}.oc-value{font-size:22px;font-weight:600;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.oc-bar{height:5px;background:color-mix(in srgb,var(--line) 70%,transparent);overflow:hidden}.oc-bar,.oc-bar>i{border-radius:999px}.oc-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--magenta))}.daily{margin-top:16px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,var(--surface),var(--bg-2));display:flex;flex-direction:column;gap:8px}.daily-head{display:flex;align-items:baseline;justify-content:space-between}.daily-liuri{font-size:12.5px;letter-spacing:.14em}.daily-liuri,.daily-score{font-family:var(--font-display);color:var(--ink-dim)}.daily-score{font-size:30px;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.daily-score[data-rel=resource],.daily-score[data-rel=wealth]{color:var(--cyan);text-shadow:0 0 14px var(--glow-cyan)}.daily-score[data-rel=same]{color:var(--violet)}.daily-score[data-rel=output]{color:var(--ink)}.daily-score[data-rel=pressure]{color:var(--magenta);text-shadow:0 0 12px var(--glow-mag)}.daily-headline{font-size:16px;line-height:1.45;color:var(--ink);margin:0}.daily-rel{font-family:var(--font-display);font-size:11.5px;letter-spacing:.06em;color:var(--ink-faint);margin:0}.daily-yiji{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:4px}.daily-ji,.daily-yi{font-size:13.5px;line-height:1.4}.daily-yi{color:var(--cyan)}.daily-ji{color:var(--ink-dim)}.daily-kw{font-family:var(--font-display);font-size:11.5px;color:var(--magenta);border:1px solid color-mix(in srgb,var(--magenta) 40%,var(--line));border-radius:999px;padding:3px 9px;align-self:flex-start}.daily-why{border-top:1px solid color-mix(in srgb,var(--line) 60%,transparent);margin-top:4px}.daily-why-sum{cursor:pointer;list-style:none;padding:10px 0 2px;font-family:var(--font-display);font-size:12px;color:var(--ink-faint);letter-spacing:.04em;-webkit-user-select:none;-moz-user-select:none;user-select:none}.daily-why-sum::-webkit-details-marker{display:none}.daily-why-sum:hover{color:var(--ink-dim)}.daily-facs{display:flex;flex-direction:column;gap:6px;padding:8px 0 4px}.daily-fac{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:13px}.daily-fac-l{color:var(--ink-dim);line-height:1.4}.daily-fac-d{font-family:var(--font-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-faint);white-space:nowrap}.daily-fac-d[data-s=up]{color:var(--cyan)}.daily-fac-d[data-s=down]{color:var(--magenta)}.ws-gauge{display:flex;flex-direction:column;gap:6px}.ws-track{position:relative;height:8px;border-radius:999px;background:linear-gradient(90deg,var(--magenta),color-mix(in srgb,var(--line) 80%,transparent) 50%,var(--cyan))}.ws-mark{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);background:var(--ink);border:2px solid var(--bg-2);box-shadow:0 0 10px var(--glow-cyan)}.ws-scale{display:flex;justify-content:space-between;font-family:var(--font-display);font-size:10.5px;color:var(--ink-faint);letter-spacing:.08em}.ws-verdict{margin-top:14px;font-size:15px;color:var(--ink-dim);display:flex;align-items:baseline;gap:8px}.ws-verdict b{color:var(--ink);font-weight:600}.ws-num{font-family:var(--font-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-faint);font-size:13px;margin-left:auto}.ws-checks{display:flex;flex-direction:column;gap:8px;margin-top:14px}.ws-check{display:flex;align-items:baseline;gap:10px}.ws-check-l{font-family:var(--font-display);font-size:13px;padding:3px 10px;border-radius:999px;border:1px solid var(--line);color:var(--ink-faint);white-space:nowrap;flex:0 0 auto}.ws-check[data-on="1"] .ws-check-l{color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 45%,var(--line))}.ws-check-w{font-size:13px;color:var(--ink-dim);line-height:1.45}.fld{display:flex;flex-direction:column;gap:8px}.fld-label{font-family:var(--font-display);font-size:13px;color:var(--ink-dim);letter-spacing:.06em}.fld-hint{font-size:12.5px;line-height:1.5;color:var(--ink-faint)}.fld-hint b{color:var(--ink-dim);font-weight:600}select.addr-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.seg{display:flex;gap:8px}.seg-btn{flex:1 1;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink-dim);font-family:var(--font-display);font-size:14px;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.seg-btn.on{border-color:var(--cyan);color:var(--ink);background:var(--bg-2)}.result{display:flex;flex-direction:column;gap:16px}.result .card{animation:none;padding:20px 22px}.rhead{display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden;padding:22px;border:1px solid var(--line);border-radius:var(--radius)}.rmeta{font-size:12.5px;color:var(--ink-faint);letter-spacing:.04em}.rmeta,.sec-h{font-family:var(--font-display)}.sec-h{font-size:14px;letter-spacing:.1em;color:var(--ink-dim);margin-bottom:14px}.plate-details{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.plate-summary{cursor:pointer;padding:15px 18px;font-family:var(--font-display);font-size:13.5px;color:var(--ink-dim);list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.plate-summary::-webkit-details-marker{display:none}.plate-summary:hover{color:var(--ink)}.plate-details[open] .plate-summary{border-bottom:1px solid var(--line)}.plate-details .plate-wrap{border:none;background:none}.plate-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,var(--surface),var(--bg-2))}.plate{width:100%;border-collapse:collapse;font-size:14px;min-width:340px}.plate td,.plate th{padding:9px 8px;text-align:center}.plate thead th{font-family:var(--font-display);font-size:15px;color:var(--ink);border-bottom:1px solid var(--line);letter-spacing:.1em}.plate tbody th{font-family:var(--font-display);font-size:13px;color:var(--ink-dim);text-align:right;padding-right:12px;letter-spacing:.08em;white-space:nowrap}.plate tbody tr:not(:last-child) td,.plate tbody tr:not(:last-child) th{border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent)}.plate .pl-gan td{font-family:var(--font-display);font-size:24px;font-weight:600}.plate .pl-zhi td{font-family:var(--font-display);font-size:22px;color:var(--ink)}.plate .pl-god td{color:var(--cyan);font-size:13px}.plate .pl-hgod td,.plate .pl-hide td{color:var(--ink-dim);font-size:12px}.plate .pl-ds td,.plate .pl-ny td{color:var(--ink-faint);font-size:12px}.wx{flex-direction:column;gap:10px}.wx,.wx-row{display:flex}.wx-row{align-items:center;gap:12px}.wx-lab{font-family:var(--font-display);font-size:17px;width:20px;text-align:center}.wx-bar{flex:1 1;height:12px;background:color-mix(in srgb,var(--line) 60%,transparent);overflow:hidden}.wx-bar,.wx-bar>i{border-radius:999px}.wx-bar>i{display:block;height:100%;transition:width .6s cubic-bezier(.2,.9,.2,1)}.wx-n{font-family:var(--font-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-dim);width:16px;text-align:right;font-size:14px}.favs{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.fav,.unfav{font-family:var(--font-display);font-size:13px;padding:6px 12px;border-radius:999px;border:1px solid var(--line)}.fav{color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 40%,var(--line))}.unfav{color:var(--ink-dim)}.dayun{gap:8px;overflow-x:auto;padding-bottom:6px}.dayun,.yun{display:flex}.yun{flex:0 0 auto;min-width:66px;flex-direction:column;align-items:center;gap:3px;padding:10px 8px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.yun-on{border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan) inset}.yun-age{font-size:11px;color:var(--ink-faint)}.yun-age,.yun-gz{font-family:var(--font-display)}.yun-gz{font-size:18px;font-weight:600}.yun-god{font-size:11.5px;color:var(--ink-dim)}.yun-year{font-family:var(--font-display);font-size:10px;color:var(--ink-faint)}.now{margin-top:14px;font-size:13.5px;color:var(--ink-dim);line-height:1.5}.sections{display:flex;flex-direction:column;gap:4px}.sec{padding:16px 18px;border-left:2px solid var(--line);margin-bottom:12px;opacity:0;animation:blockIn .5s forwards}.sec.ai-sec{border-left-color:var(--cyan)}.sec-title{font-family:var(--font-display);margin-bottom:8px;letter-spacing:.04em}.sec-body,.sec-title{font-size:15px;color:var(--ink)}.sec-body{line-height:1.62;margin-bottom:4px}.whys{margin-top:6px;display:flex;flex-direction:column;gap:8px}.archive{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px 18px;gap:12px 18px}.arc-item{display:flex;flex-direction:column;gap:3px}.arc-item dt{font-size:11px;color:var(--ink-faint);letter-spacing:.08em}.arc-item dd,.arc-item dt{font-family:var(--font-display)}.arc-item dd{font-size:15px;color:var(--ink)}.person{margin-top:20px}.person-label{font-family:var(--font-display);font-size:13px;letter-spacing:.16em;color:var(--ink-dim)}.match-head{gap:6px;text-align:center;padding:8px 0 4px}.match-head,.match-score{display:flex;flex-direction:column;align-items:center}.match-score{width:128px;height:128px;border-radius:50%;justify-content:center;gap:2px;border:2px solid var(--line);margin-bottom:8px}.match-score[data-tone=good]{border-color:var(--cyan);box-shadow:0 0 30px -8px var(--glow-cyan)}.match-score[data-tone=mixed]{border-color:var(--violet)}.match-score[data-tone=hard]{border-color:var(--magenta)}.ms-num{font-family:var(--font-display);font-size:46px;font-weight:700;line-height:1;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ms-unit{font-size:11px;letter-spacing:.14em;color:var(--ink-faint)}.match-name,.ms-unit{font-family:var(--font-display)}.match-name{font-size:30px;font-weight:700;margin:0}.match-en{font-family:var(--font-display);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}.match-blurb{font-size:15px;color:var(--ink-dim);line-height:1.5;max-width:30ch}.match-pair{display:flex;align-items:stretch;gap:10px}.party{flex:1 1;display:flex;flex-direction:column;gap:5px;padding:16px;text-align:center;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,var(--surface),var(--bg-2))}.party-title{font-size:11px;letter-spacing:.14em;color:var(--ink-faint)}.party-dm,.party-title{font-family:var(--font-display)}.party-dm{font-size:26px;font-weight:600;color:var(--ink)}.party-meta{font-size:12px;color:var(--ink-dim)}.party-gz{font-size:12px;color:var(--ink-faint);letter-spacing:.02em}.pair-x,.party-gz{font-family:var(--font-display)}.pair-x{align-self:center;font-size:15px;color:var(--cyan)}.factor{display:flex;flex-direction:column;gap:8px}.factor-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.factor-top .sec-title{margin:0}.factor-badge{font-family:var(--font-display);font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);white-space:nowrap}.badge-good{color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 45%,var(--line))}.badge-mixed{color:var(--violet)}.badge-hard{color:var(--magenta)}.factor-good{border-left-color:color-mix(in srgb,var(--cyan) 60%,var(--line))}.factor-hard{border-left-color:color-mix(in srgb,var(--magenta) 55%,var(--line))}.cta-ghost{display:block;text-align:center;padding:14px;border:1px dashed var(--line);border-radius:var(--radius);color:var(--ink-dim);font-family:var(--font-display);font-size:14px;text-decoration:none;transition:border-color .15s,color .15s}.cta-ghost:hover{border-color:var(--cyan);color:var(--ink)}.paywall{margin-top:24px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,var(--surface),var(--bg-2));text-align:center;display:flex;flex-direction:column;gap:10px}.paywall-title{font-family:var(--font-display);color:var(--magenta);font-size:15px}.paywall-sub{line-height:1.4}.pay-pending,.paywall-sub{color:var(--ink-dim);font-size:13.5px}.pay-pending{line-height:1.5;padding:12px 0}@media (prefers-reduced-motion:reduce){.starwheel,.starwheel:after{animation-duration:8s}.block,.card,.fragment{animation:none;opacity:1;transform:none}}.ink{--bg:#e9e4d6;--bg-2:#e3ddcc;--surface:#f0ebde;--ink:#26241d;--ink-dim:#655f52;--ink-faint:#6f6858;--cyan:#a8352a;--magenta:#7c6a58;--violet:#3d5c4f;--line:#cfc6b2;--glow-cyan:rgba(168,53,42,0.18);--glow-mag:rgba(124,106,88,0);--font-display:"Songti SC","STSong","Noto Serif SC","SimSun",serif;--radius:12px;color:var(--ink)}.ink-body{background:radial-gradient(1000px 600px at 12% -8%,rgba(168,53,42,.05),transparent 60%),radial-gradient(820px 700px at 100% 108%,rgba(61,92,79,.06),transparent 55%),#e9e4d6}.ink .card{background:linear-gradient(160deg,var(--surface),var(--bg-2))}.ink .starwheel{background:radial-gradient(circle at 50% 50%,rgba(168,53,42,.1),transparent 70%)}.ink .cta{color:#f6f1e5}.ink .tag{background:rgba(38,36,29,.03)}.yun{position:relative;cursor:pointer;font:inherit;text-align:center;transition:border-color .15s,transform .12s}.yun:hover{transform:translateY(-2px)}.yun[data-tone=good]{border-color:color-mix(in srgb,var(--cyan) 40%,var(--line))}.yun[data-tone=hard]{border-color:color-mix(in srgb,var(--magenta) 35%,var(--line))}.yun-open{box-shadow:0 0 0 1px var(--ink-dim) inset}.yun-bar{width:100%;height:3px;background:color-mix(in srgb,var(--line) 70%,transparent);overflow:hidden;margin-top:4px}.yun-bar,.yun-bar>i{display:block;border-radius:999px}.yun-bar>i{height:100%;background:var(--ink-dim)}.yun[data-tone=good] .yun-bar>i{background:var(--cyan)}.yun[data-tone=hard] .yun-bar>i{background:var(--magenta)}.yun-detail{margin-top:14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.yun-detail[data-tone=good]{border-color:color-mix(in srgb,var(--cyan) 35%,var(--line))}.yun-detail[data-tone=hard]{border-color:color-mix(in srgb,var(--magenta) 30%,var(--line))}.yun-detail-h{font-family:var(--font-display);font-size:15px;color:var(--ink);display:flex;align-items:baseline;gap:8px}.yun-detail-b{font-size:14px;line-height:1.5;color:var(--ink-dim);margin:6px 0 4px}.ss-list{display:flex;flex-direction:column;gap:14px}.ss{border-left:2px solid var(--line);padding-left:12px}.ss[data-tone=auspicious]{border-left-color:color-mix(in srgb,var(--cyan) 55%,var(--line))}.ss[data-tone=caution]{border-left-color:color-mix(in srgb,var(--magenta) 50%,var(--line))}.ss-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.ss-name{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--ink);letter-spacing:.04em}.ss-pos{font-size:11px;border:1px solid var(--line);border-radius:999px;padding:2px 8px}.ss-basis,.ss-pos{font-family:var(--font-display);color:var(--ink-faint)}.ss-basis{font-size:11.5px;margin-left:auto}.ss-blurb{font-size:14px;line-height:1.55;color:var(--ink-dim);margin-top:5px}.term{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:3px;-webkit-text-decoration-color:color-mix(in srgb,var(--cyan) 60%,transparent);text-decoration-color:color-mix(in srgb,var(--cyan) 60%,transparent);text-decoration-thickness:1px}.term:focus-visible,.term:hover{-webkit-text-decoration-style:solid;text-decoration-style:solid;color:var(--cyan)}.term-pop{margin:auto;max-width:min(30rem,calc(100vw - 32px));padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2);color:var(--ink);box-shadow:0 24px 60px -12px rgba(0,0,0,.6)}.term-pop::-webkit-backdrop{background:rgba(0,0,0,.45)}.term-pop::backdrop{background:rgba(0,0,0,.45)}.ink .term-pop::-webkit-backdrop{background:rgba(38,36,29,.28)}.ink .term-pop::backdrop{background:rgba(38,36,29,.28)}.term-pop-h{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--cyan);letter-spacing:.04em}.term-pop-b{font-size:15px;line-height:1.6;color:var(--ink);margin-top:8px}.term-pop-l{font-size:13.5px;line-height:1.65;color:var(--ink-dim);margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.gloss{padding:6px 18px 18px;display:flex;flex-direction:column;gap:20px}.gloss-h{font-family:var(--font-display);font-size:12px;letter-spacing:.16em;color:var(--cyan);margin-bottom:10px}.gloss-l{gap:12px}.gloss-i,.gloss-l{display:flex;flex-direction:column}.gloss-i{gap:3px}.gloss-t{font-family:var(--font-display);font-size:14.5px;font-weight:600;color:var(--ink)}.gloss-d{font-size:13.5px;line-height:1.6;color:var(--ink-dim)}.gloss-more{display:block;margin-top:4px;color:var(--ink-faint);font-size:13px}.rmeta-adj{color:var(--cyan);opacity:.9}.th{margin-top:14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.th-conflict{border-color:color-mix(in srgb,var(--magenta) 40%,var(--line))}.th-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.th-tag{font-size:12px;letter-spacing:.1em;color:var(--ink-dim)}.th-need,.th-tag{font-family:var(--font-display)}.th-need{font-size:14px;font-weight:600;color:var(--cyan)}.th-urg{font-family:var(--font-display);font-size:10.5px;letter-spacing:.1em;color:var(--magenta);border:1px solid color-mix(in srgb,var(--magenta) 45%,var(--line));border-radius:999px;padding:2px 8px}.th-body{font-size:13.5px;color:var(--ink-dim)}.th-body,.th-note{line-height:1.6;margin-top:8px}.th-note{font-size:13px;color:var(--ink-faint);padding-top:8px;border-top:1px solid var(--line)}.th-conflict .th-note{color:var(--magenta);opacity:.95}.oc-trunc{font-family:var(--font-display);font-size:12px;line-height:1.5;color:var(--violet);border:1px solid color-mix(in srgb,var(--violet) 35%,var(--line));border-radius:12px;padding:10px 12px;background:color-mix(in srgb,var(--violet) 7%,transparent)}