.pv{--pv:#e8554e;--pv-tr:#e5a92a}
.pv-h2{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px;margin:30px 0 12px;color:var(--hi);font:19px/1.1 var(--f-lbl);letter-spacing:2px;text-transform:uppercase}
.pv-h2 small{color:var(--dim);font:13px var(--f-ui);letter-spacing:.3px;text-transform:none}
.pv-note{margin:10px 0 0;color:var(--dim);font:13.5px/1.45 var(--f-ui)}
.pv-note a{color:var(--link)}
.pv-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0}
.pv-st{padding:3px 10px 2px;background:var(--pn3);color:var(--tx);font:11.5px/1.3 var(--f-lbl);letter-spacing:1.2px;text-transform:uppercase;clip-path:var(--slant)}
.pv-st:empty{display:none}
.pv-st.s-open{background:#2f9e5a;color:#fff}.pv-st.s-upcoming{background:#c99417;color:#0d1017}
.pv-k{padding:3px 10px 2px;background:var(--pn2);border:1px solid var(--ln);color:var(--tx);font:11.5px/1.3 var(--f-lbl);letter-spacing:1px;text-transform:uppercase}
.pv-k.hot{background:var(--pv);border-color:var(--pv);color:#fff}
.pv-k.tr{background:var(--pv-tr);border-color:var(--pv-tr);color:#0d1017}
.pv-when{color:var(--dim);font:14px/1.35 var(--f-ui)}
.pv-when b{margin-left:6px;color:var(--acc-tx);font:15px var(--f-num)}
.pv-art{position:relative;display:block;overflow:hidden;background:#0b0e16;line-height:0}
.pv-art.ban img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}
.pv-art.pl{aspect-ratio:2/1;background:radial-gradient(circle at 30% 50%,color-mix(in srgb,var(--pv) 35%,transparent),transparent 65%),#0b0e16}
.pv-art.pl .pv-pn{position:absolute;left:4%;top:50%;height:94%;width:auto;transform:translateY(-50%)}
.pv-art.pl .pv-lg{position:absolute;right:4%;top:50%;width:44%;max-height:80%;height:auto;object-fit:contain;transform:translateY(-50%);filter:drop-shadow(0 4px 10px rgba(0,0,0,.6))}
.pv-art.pl.std .pv-pn{opacity:.55;filter:grayscale(.35)}
.pv-art.mp{display:flex;align-items:center;justify-content:center;aspect-ratio:2/1;padding:14px;background:radial-gradient(circle at 50% 55%,color-mix(in srgb,var(--pv) 30%,transparent),transparent 70%),#0b0e16}
.pv-art.mp img{max-width:88%;max-height:88%;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}
.pv-hero.m-training .pv-art.mp img,.pv-hero.m-friend .pv-art.mp img{width:80%}
.pv-art.mp .pv-lg{position:absolute;right:4%;bottom:6%;width:46%;height:auto}
.pv-hero{display:grid;grid-template-columns:minmax(0,520px) minmax(0,1fr);gap:22px;align-items:center;margin:0 0 14px;padding:16px;background:var(--pn);
  border:1px solid var(--ln);border-top:3px solid var(--pv);box-shadow:var(--sh);color:var(--tx);text-decoration:none;transition:border-color .15s}
a.pv-hero:hover{border-color:var(--pv);color:var(--tx)}
.pv-hero.tri{border-top-color:#2fc6d6}
.pv-hero-i{display:flex;flex-direction:column;gap:9px;min-width:0}
.pv-name{margin:0;color:var(--hi);font:30px/1.08 var(--f-num);letter-spacing:.3px}
span.pv-name,b.pv-name{display:block}
.pv-go{color:var(--acc-tx);font:14px var(--f-lbl);letter-spacing:1.2px;text-transform:uppercase}
.pv-acts{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 0}
.pv-modes{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:12px}
.pv-mode{display:flex;flex-direction:column;background:var(--pn);border:1px solid var(--ln);border-top:3px solid var(--pv);box-shadow:var(--sh);color:var(--tx);text-decoration:none;transition:transform .15s,border-color .15s}
.pv-mode:hover{transform:translateY(-2px);border-color:var(--pv);color:var(--tx)}
.pv-mode.m-treasure{border-top-color:var(--pv-tr)}.pv-mode.m-tri-arena{border-top-color:#2fc6d6}.pv-mode.m-training{border-top-color:#5fd36a}.pv-mode.m-friend{border-top-color:#a66bff}
.pv-mart{display:flex;align-items:center;justify-content:center;height:120px;padding:8px;background:radial-gradient(circle at 50% 60%,rgba(255,255,255,.08),transparent 70%),#0b0e16;line-height:0}
.pv-mart img{width:auto;height:auto;max-width:92%;max-height:100%;object-fit:contain}
.pv-mode.m-training .pv-mart img,.pv-mode.m-friend .pv-mart img{width:92%}
.pv-mb{display:flex;flex-direction:column;gap:4px;padding:11px 13px 13px}
.pv-mb b{color:var(--hi);font:18px/1.15 var(--f-lbl);font-weight:normal}
.pv-mb span{color:var(--dim);font:13.5px/1.4 var(--f-ui)}
.pv-modes.sm{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr))}
.pv-modes.sm .pv-mart{height:80px}
.pv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:12px;margin-top:14px}
.pv-card{display:flex;flex-direction:column;background:var(--pn);border:1px solid var(--ln);box-shadow:var(--sh);color:var(--tx);text-decoration:none;transition:transform .15s,border-color .15s}
.pv-card:hover{transform:translateY(-2px);border-color:var(--pv);color:var(--tx)}
.pv-card.t{border-left:3px solid #2fc6d6}
.pv-cb{display:flex;flex-direction:column;gap:5px;padding:10px 13px 12px}
.pv-cb b{color:var(--hi);font:16.5px/1.2 var(--f-lbl);font-weight:normal}
.pv-pts{display:flex;flex-direction:column;gap:3px;margin-top:2px;color:var(--tx);font:13px/1.35 var(--f-ui)}
.pv-pts small{display:inline-block;min-width:52px;color:var(--dim);font:11.5px var(--f-lbl);letter-spacing:.8px;text-transform:uppercase}
.pv-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:12px}
.pv-box{padding:12px 14px;background:var(--pn);border:1px solid var(--ln);box-shadow:var(--sh)}
.pv-box h3{margin:0 0 9px;color:var(--hi);font:15px var(--f-lbl);letter-spacing:1.4px;text-transform:uppercase}
.pv-its{display:flex;flex-wrap:wrap;gap:6px}
.pv-it{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:4px 10px 4px 5px;background:var(--pn2);border:1px solid var(--ln);color:var(--tx);text-decoration:none;font:13.5px/1.2 var(--f-ui)}
a.pv-it:hover{border-color:var(--pv);color:var(--hi)}
.pv-it img{flex:none;width:30px;height:30px;object-fit:contain}
.pv-it span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pv-it b{color:var(--hi);font:15px var(--f-num);white-space:nowrap}
.pv-tab{width:100%;border-collapse:collapse}
.pv-tab td,.pv-tab th{padding:7px 10px;border-bottom:1px solid var(--ln);color:var(--tx);font:14px var(--f-ui);text-align:left}
.pv-tab th{color:var(--dim);font:12px var(--f-lbl);letter-spacing:1.2px;text-transform:uppercase}
.pv-tab td:last-child{white-space:nowrap}
.pv-tab b{color:var(--hi);font:16px var(--f-num)}
.pv-tab.wide{background:var(--pn);border:1px solid var(--ln);box-shadow:var(--sh)}
.pv-blk{display:inline-block;min-width:30px;padding:2px 8px;background:var(--pv);color:#fff !important;text-align:center;clip-path:var(--slant)}
.pv-tiers{display:flex;flex-direction:column;gap:10px}
.pv-tier{background:var(--pn);border:1px solid var(--ln);box-shadow:var(--sh)}
.pv-tier summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:11px 14px;cursor:pointer;list-style:none;color:var(--tx);font:14px var(--f-ui)}
.pv-tier summary::-webkit-details-marker{display:none}
.pv-tier summary::before{content:'\25B8';color:var(--dim);transition:transform .15s}
.pv-tier[open] summary::before{transform:rotate(90deg)}
.pv-tier summary>b{color:var(--hi);font:18px var(--f-num)}
.pv-tier summary>span:not(.pv-ab){color:var(--dim)}
.pv-ab{flex-basis:100%;color:var(--tx);font:13.5px/1.5 var(--f-ui)}
.pv-ab em{color:var(--acc-tx);font-style:normal;font:12px var(--f-lbl);letter-spacing:.8px;text-transform:uppercase}
.pv-chars{padding:6px 12px 16px}
.pv-chars .chara-list{margin:0}
.pv-rules{columns:360px 3;column-gap:12px}
.pv-rule{display:block;width:100%;margin:0 0 12px;break-inside:avoid;padding:13px 15px;background:var(--pn);border:1px solid var(--ln);box-shadow:var(--sh)}
.pv-rule h3{margin:0 0 7px;color:var(--hi);font:16px var(--f-lbl);letter-spacing:1.1px;text-transform:uppercase}
.pv-rule p{margin:0 0 6px;color:var(--tx);font:14.5px/1.5 var(--f-ui)}
.pv-rule p:empty{display:none}
.pv-rule ul{margin:0;padding-left:18px;color:var(--tx);font:14.5px/1.5 var(--f-ui)}
.pv-rule li.note{list-style:none;margin-left:-18px;color:var(--dim);font-size:13.5px}
.pv-rule.pic img{display:block;width:100%;height:auto;margin:-2px 0 10px}
.pv-ranks{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.pv-rank{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px 9px;background:var(--pn);border:1px solid var(--ln);text-align:center}
.pv-rank img{width:70px;height:70px;object-fit:contain}
.pv-rank b{color:var(--hi);font:15px/1.15 var(--f-lbl);font-weight:normal}
.pv-rank span{color:var(--acc-tx);font:14px var(--f-num)}
.pv-rank small{color:var(--dim);font:11px var(--f-lbl);letter-spacing:.6px;text-transform:uppercase}
.pv-tri{display:flex;flex-direction:column;gap:10px}
.pv-tr{padding:12px 14px;background:var(--pn);border:1px solid var(--ln);border-left:3px solid #2fc6d6;box-shadow:var(--sh);scroll-margin-top:calc(var(--sh-h,0px) + 16px)}
.pv-tr.hl{outline:2px solid var(--acc);outline-offset:2px}
.pv-tr header{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:9px}
.pv-tr header>b{color:var(--hi);font:18px var(--f-lbl);font-weight:normal}
.pv-parties{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:8px}
.pv-parties>div{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:7px 9px;background:var(--pn2);border:1px solid var(--ln)}
.pv-parties small{flex-basis:100%;color:var(--dim);font:11.5px var(--f-lbl);letter-spacing:1px;text-transform:uppercase}
.pv-parties span{padding:2px 8px;background:var(--pn);border:1px solid var(--ln);color:var(--hi);font:13.5px var(--f-ui)}
.pv-rl{margin:8px 0 0;color:var(--tx);font:14px var(--f-ui)}
.pv-trf{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:8px 14px;margin-top:10px}
.pv-trf small{display:block;margin-bottom:5px;color:var(--dim);font:11.5px var(--f-lbl);letter-spacing:1px;text-transform:uppercase}
.pv-times{display:flex;flex-direction:column;gap:2px;margin:0;color:var(--tx);font:13.5px var(--f-ui)}
.pv-times b{display:inline-block;min-width:28px;color:var(--hi);font:13px var(--f-lbl)}
.pv-pg{display:flex;justify-content:space-between;gap:12px;margin-top:22px}
.pv-pg a{color:var(--tx);text-decoration:none;font:14px var(--f-lbl);letter-spacing:.5px}
.pv-pg a:hover{color:var(--hi)}
@media(max-width:820px){
  .pv-hero{grid-template-columns:minmax(0,1fr);padding:12px}
  .pv-name{font-size:25px}
}
.pv-chars.lp-grid{zoom:.8}
