body.tsh{--accent:#b18cf0}.tsh .realm-head h1 .g-bio{background:linear-gradient(90deg,#c9a8ff,#8f7bf0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.tsh-inputs{grid-template-columns:2fr 1fr}@media (max-width:560px){.tsh-inputs{grid-template-columns:1fr}}.tsh-dob input{color-scheme:dark}.tsh-vnnote{margin:10px 2px 0;font-size:12px;line-height:1.5;color:var(--faint)}.tsh-h{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:15px;font-weight:800;color:var(--ink)}.tsh-sub{margin:0 0 12px;font-size:12.5px;line-height:1.55;color:var(--dim)}.tsh-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px}.tsh-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer;padding:14px 10px 13px;border-radius:14px;text-align:center;border:1px solid rgba(140,160,235,.22);background:rgba(255,255,255,.03);transition:border-color .16s,background .16s,transform .1s}.tsh-card:hover{border-color:#b18cf08c;background:rgba(177,140,240,.08)}.tsh-card:active{transform:translateY(1px)}.tsh-card.on{border-color:var(--accent);background:rgba(177,140,240,.12);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.tsh-card .tc-ico{font-size:19px;line-height:1}.tsh-card .tc-lab{font:600 10.5px/1.2 var(--font-sans);text-transform:uppercase;letter-spacing:.04em;color:var(--dim)}.tsh-card .tc-num{font:800 34px/1 var(--font-sans);color:hsl(var(--h),80%,72%);text-shadow:0 0 20px hsla(var(--h),85%,60%,.5)}.tsh-card.master .tc-num:after{content:"★";font-size:12px;vertical-align:super;margin-left:2px;color:#ffd66b}.tsh-card .tc-name{font:600 11.5px/1.3 var(--font-sans);color:var(--faint)}.tsh-detail{margin-top:14px;padding:16px;border-radius:14px;border:1px solid rgba(177,140,240,.3);background:rgba(177,140,240,.06)}.td-head{display:flex;align-items:center;gap:14px;margin-bottom:10px}.td-num{flex:0 0 auto;width:52px;height:52px;display:grid;place-items:center;border-radius:12px;font:800 27px/1 var(--font-sans);color:#0a0e1a;background:hsl(var(--h),72%,64%);box-shadow:0 0 22px hsla(var(--h),80%,60%,.5)}.td-head h3{font-size:16px;font-weight:800;color:var(--ink);margin:0}.td-kw{font-size:12px;color:#c1a5e9;margin:2px 0 0;font-weight:600}.td-role{font-size:13px;line-height:1.6;color:var(--dim);margin:0 0 8px}.td-desc{font-size:13.5px;line-height:1.65;color:var(--ink);margin:0 0 12px}.td-traits{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width:560px){.td-traits{grid-template-columns:1fr}}.tt{font-size:12.5px;line-height:1.55;padding:10px 12px;border-radius:10px;color:var(--dim)}.tt-l{display:block;font-weight:800;margin-bottom:3px;letter-spacing:.02em}.tt.up{background:rgba(95,208,122,.1);border:1px solid rgba(95,208,122,.28)}.tt.up .tt-l{color:#6fd88a}.tt.down{background:rgba(240,169,90,.1);border:1px solid rgba(240,169,90,.28)}.tt.down .tt-l{color:#f0b45a}.tsh-chartwrap{display:grid;grid-template-columns:minmax(240px,1fr) 1fr;gap:20px;align-items:center}@media (max-width:720px){.tsh-chartwrap{grid-template-columns:1fr}}.tsh-mandala{position:relative;width:100%;aspect-ratio:1/1;max-width:360px;margin:0 auto}.tsh-mandala canvas{width:100%;height:100%;display:block}.tsh-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:280px}.tsh-cell{position:relative;aspect-ratio:1/1;border-radius:12px;display:grid;place-items:center;border:1px solid rgba(140,160,235,.18);background:rgba(8,11,22,.5)}.tsh-cell.has{border-color:hsla(var(--h),70%,60%,.6);background:hsla(var(--h),65%,45%,.16);box-shadow:inset 0 0 20px hsla(var(--h),70%,55%,.18)}.tsh-cell .cell-dig{font:800 22px/1 var(--font-mono);letter-spacing:1px;color:hsl(var(--h),80%,74%)}.tsh-cell .cell-n{position:absolute;top:5px;right:7px;font:600 10px/1 var(--font-sans);color:var(--faint)}.tsh-cell.has .cell-n{color:hsla(var(--h),60%,78%,.85)}.tsh-missing{margin:14px 0 0;font-size:12.5px;line-height:1.55;color:var(--dim)}.tsh-pinn{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.pn-card{display:flex;flex-direction:column;gap:5px;padding:13px 12px;border-radius:13px;text-align:center;border:1px solid rgba(177,140,240,.26);background:rgba(177,140,240,.05)}.pn-age{font:600 10.5px/1.2 var(--font-sans);text-transform:uppercase;letter-spacing:.05em;color:var(--dim)}.pn-num{font:800 30px/1 var(--font-sans);color:hsl(var(--h),80%,72%)}.pn-kw{font:600 11px/1.4 var(--font-sans);color:var(--faint)}.pn-ch{margin-top:4px;padding-top:7px;border-top:1px dashed rgba(140,160,235,.2);font-size:11.5px;line-height:1.45;color:var(--dim)}.pn-ch b{color:#f0b45a}.tsh-pmd{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:12px}.pmd-chip{display:flex;align-items:center;gap:9px;padding:9px 13px;border-radius:11px;border:1px solid rgba(140,160,235,.22);background:rgba(255,255,255,.03)}.pmd-chip span{font:600 11.5px/1 var(--font-sans);color:var(--dim)}.pmd-chip b{font:800 21px/1 var(--font-sans);color:hsl(var(--h),80%,72%)}.pmd-chip i{font:500 11px/1.3 var(--font-sans);font-style:normal;color:var(--faint)}.tsh-ninerow{display:grid;grid-template-columns:repeat(9,1fr);gap:6px;max-width:640px}@media (max-width:640px){.tsh-ninerow{grid-template-columns:repeat(3,1fr)}}.nine-cell{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px;border-radius:10px;border:1px solid rgba(140,160,235,.16);background:rgba(8,11,22,.4)}.nine-cell span{font:600 10.5px/1 var(--font-mono);color:var(--faint)}.nine-cell b{font:800 17px/1 var(--font-sans);color:hsl(var(--h),75%,70%)}.nine-cell.now{border-color:hsl(var(--h),70%,62%);background:hsla(var(--h),60%,48%,.14);box-shadow:0 0 0 2px hsla(var(--h),70%,60%,.25)}.tsh-bridges{display:flex;flex-direction:column;gap:10px}.tsh-bridge{padding:13px 15px;border-radius:13px;border:1px solid var(--bc,rgba(140,160,235,.2));background:color-mix(in srgb,var(--bc,#8c9ceb) 6%,rgba(12,16,30,.4))}.tsh-bridge.g0{--bc:#5fd07a}.tsh-bridge.g1{--bc:#8fd0a0}.tsh-bridge.g2{--bc:#e0c05a}.tsh-bridge.g3{--bc:#e0885a}.tb-head{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin-bottom:5px}.tb-ico{font-size:15px}.tb-head b{font:800 13.5px/1.3 var(--font-sans);color:var(--ink)}.tb-gap{margin-left:auto;font:600 12px/1.4 var(--font-mono);color:var(--dim)}.tb-gap b{color:var(--bc,#b18cf0)}.tsh-bridge p{margin:0;font-size:12.5px;line-height:1.65;color:var(--dim)}
