h2{font-size:19px;margin:0 0 6px}
.card{margin:14px 0}
.mono{font-family:var(--mono)}
.avhero{display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:22px;align-items:start;margin-top:6px}
@media (max-width:760px){.avhero{grid-template-columns:1fr;gap:6px}}
.stagebox{position:relative;text-align:center}
#stage{width:100%;max-width:360px;aspect-ratio:1;border-radius:26px;cursor:pointer;touch-action:manipulation;box-shadow:0 18px 50px rgba(0,0,0,.45);outline:none}
@media (max-width:760px){#stage{max-width:300px}}
.taphint{font-size:12.5px;color:var(--muted);margin-top:6px}
.idcard{padding:14px}
.nick{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.nick input{flex:1;min-width:0;background:rgba(0,0,0,.35);border:1px solid rgba(255,248,232,.18);border-radius:10px;color:var(--cream);font:700 15px var(--sans);padding:8px 10px}
.lvrow{display:flex;gap:8px;align-items:center;margin:12px 0 8px;flex-wrap:wrap}
.lvb{font:900 20px var(--serif);color:var(--gold)}
.tier{font:800 12px var(--sans);padding:4px 10px;border-radius:999px;border:1px solid currentColor}
.tier.legendary{color:#ffd452;background:rgba(255,212,82,.12)}.tier.epic{color:#c4a1ff}.tier.rare{color:#5ee0ff}.tier.uncommon{color:#6ee7a8}.tier.common{color:#cdbfa8}
.xpbar{height:10px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.xpbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--si),var(--gold));border-radius:99px;transition:width .8s cubic-bezier(.2,.9,.3,1)}
.badgerow{font-size:20px;letter-spacing:3px;margin:8px 0 2px;min-height:6px}
.onein{font-weight:800;margin:8px 0 2px}
.avshare{display:grid;gap:8px;max-width:480px;margin:14px 0}
.quests{display:grid;gap:8px;margin-top:8px}
.q{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;padding:10px 12px;border-radius:14px;background:rgba(0,0,0,.22)}
.q b{font-size:14.5px}.q .qd{font-size:12px;color:var(--muted)}.q .qv{font:800 13px var(--mono);color:var(--gold);text-align:right}
.q .qbar{grid-column:1/-1;height:5px;border-radius:9px;background:rgba(255,255,255,.07);overflow:hidden;margin-top:4px}.q .qbar i{display:block;height:100%;background:var(--si)}
.q a{grid-column:2;font-size:12.5px;font-weight:800;text-align:right}
.badges{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-top:8px}
.bd{display:flex;gap:8px;align-items:center;padding:9px 10px;border-radius:12px;background:rgba(0,0,0,.22);font-size:13px;font-weight:700}
.bd span{font-size:20px}.bd.off{opacity:.38;filter:grayscale(1)}
.traits{display:grid;gap:6px;margin-top:8px}
.tr{display:grid;grid-template-columns:96px 1fr 64px;gap:8px;align-items:center;font-size:13.5px}
.tr .tl{color:var(--muted)}.tr .tp{font:700 12.5px var(--mono);text-align:right;color:var(--gold)}
.tr .tb{grid-column:1/-1;height:4px;border-radius:9px;background:rgba(255,255,255,.06);overflow:hidden}.tr .tb i{display:block;height:100%;background:var(--gold);opacity:.7}
.wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin-top:10px}
.wt{display:flex;flex-direction:column;align-items:center;gap:3px;background:rgba(0,0,0,.2);border-radius:16px;padding:8px 4px;cursor:pointer;border:0;color:var(--cream);font:600 11.5px var(--sans)}
.wt canvas{animation:bob 3.2s ease-in-out infinite;animation-delay:var(--d,0s)}
.wt.jump canvas{animation:hop .55s cubic-bezier(.3,1.4,.5,1)}
.wt small{color:var(--muted);font-size:10.5px}
.wsub{font:800 12px var(--sans);color:var(--gold);margin:12px 0 0;letter-spacing:.05em}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes hop{0%{transform:translateY(0) scale(1.1,.85)}35%{transform:translateY(-26px) scale(.92,1.1)}70%{transform:translateY(0) scale(1.12,.86)}100%{transform:translateY(0) scale(1)}}
.vsgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}
@media (max-width:700px){.vsgrid{grid-template-columns:1fr}}
.vsc,.vss{border-radius:14px;padding:12px 14px;background:rgba(0,0,0,.22)}
.vsc{border-top:3px solid var(--claus)}.vss{border-top:3px solid var(--si)}
.vsc h3,.vss h3{margin:0 0 6px;font-size:15px}
.vsc ul,.vss ul{margin:0 0 8px;padding-left:18px;font-size:13.5px;line-height:1.6}
.shared{display:flex;gap:14px;align-items:center;border-color:rgba(94,224,255,.4)}
.shared canvas{flex:none;border-radius:16px}
.shared b{display:block;font-size:15px}.shared p{margin:4px 0;font-size:12.5px;color:var(--muted)}
.shared[hidden]{display:none}
.avhero>*{min-width:0}
.idcard p,.lead{overflow-wrap:anywhere}
