body:not(:has(.jp-home))::before{
  content:"";position:fixed;inset:-20vmax;z-index:-2;pointer-events:none;
  background:
    radial-gradient(36vmax 28vmax at 16% 18%,rgba(140,82,230,.18),transparent 70%),
    radial-gradient(32vmax 26vmax at 86% 34%,rgba(92,60,200,.15),transparent 70%),
    radial-gradient(38vmax 28vmax at 55% 92%,rgba(196,96,210,.1),transparent 70%);
}

.jp-kicker,main .eyebrow{font-size:11px}

.vote-site strong{font-size:11px}
.vote-site .tile-action{font-size:12px}
.vote-direct-links a,.vote-direct-links span{font-size:12.5px}
.votes-period{font-size:12px}
.voters-footer p,.voters-footer button{font-size:13px}
.vote-site{transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s,filter .4s}
.vote-site:hover{transform:translateY(-5px);box-shadow:0 22px 36px -20px rgba(0,0,0,.9);filter:saturate(1.1)}
.voters-list>li{transition:background-color .25s,transform .35s cubic-bezier(.16,1,.3,1)}
.voters-list>li:hover{background-color:rgba(120,70,190,.12);transform:translateX(4px)}

.jp-member-top span{font-size:10px}
.member-role-label{font-size:10px}
.jp-member-info p{font-size:14px;line-height:1.55}
.member-contact{font-size:13px}
.jp-team-help p{font-size:14px}
.jp-team-help a{font-size:13px}
.jp-member{transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s}
.jp-member:hover{transform:translateY(-8px);box-shadow:0 34px 60px -32px rgba(0,0,0,.95)}

.wiki-category{font-size:10.5px}
.wiki-card p{font-size:13.5px;line-height:1.55}
.wiki-card-bottom{font-size:12px}
.wiki-filters button,.wiki-question-links a,.wiki-results-heading span{font-size:13px}
.wiki-card{transition:transform .5s cubic-bezier(.16,1,.3,1)}
.wiki-card img{transition:transform 1s cubic-bezier(.16,1,.3,1),filter .5s}
.wiki-card:hover{transform:translateY(-6px)}
.wiki-card:hover img{transform:scale(1.06);filter:saturate(1.12) brightness(1.05)}

.creature-caption .eyebrow{font-size:10.5px}
.creature-caption .text-link{font-size:13px}
.bestiary-page .note,.filters label,.filters button{font-size:13px}
.creature{transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s}
.creature:hover{transform:translateY(-6px);box-shadow:0 30px 50px -30px rgba(0,0,0,.95)}

main th{font-size:11px}
main td{font-size:13.5px}
.ban-state{font-size:10px}
.ban-types button{font-size:12px}
.ban-pagination button,.ban-pagination span{font-size:12px}
.ban-notice,.ban-help,.ban-help a{font-size:13px}
main tbody tr{transition:background-color .25s}
main tbody tr:hover{background-color:rgba(120,70,190,.1)}

.ranking-controls span,.ranking-controls button,.gems-controls span,.gems-controls button{font-size:13px}
.ranking-note,.ranking-explanation{font-size:13px}
.gems-badge{font-size:11px}
.ranking-column li{transition:background-color .25s,transform .35s cubic-bezier(.16,1,.3,1)}
.ranking-column li:hover{transform:translateX(4px)}

.jp-player-finder>span{font-size:10.5px}
.player-search label{font-size:12px}
.jp-players-art span{font-size:11px}

.rules-index strong{font-size:10.5px}
.rules-index a{font-size:13px}
.rules-page button span{font-size:11px}
.rules-origin,.rules-origin a{font-size:13px}

.jp-reveal-on [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1);transition-delay:var(--d,0s)}
.jp-reveal-on [data-reveal].is-in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  .jp-reveal-on [data-reveal]{opacity:1;transform:none;transition:none}
  .vote-site:hover,.voters-list>li:hover,.jp-member:hover,.wiki-card:hover,.creature:hover,.ranking-column li:hover{transform:none}
  .wiki-card:hover img{transform:none}
}

@media (max-width:650px){
  .member-role-label,.jp-member-top span,.wiki-category,.gems-badge,main th,.ban-state,.creature-caption .eyebrow,.jp-scene-top,.jp-index span,.jp-players-art span,.jp-player-finder>span,.player-search label{font-size:11px!important}
  .jp-kicker,main .eyebrow{font-size:11px!important}
  .player-time small,.gems-amount small{font-size:11px!important}
  .jp-scene-caption>span,.jp-scene-note small,.jp-adventure-top span,.jp-adventure-copy small,.jp-world-links small,.jp-team-link>span{font-size:11px!important}
  .jp-home .jp-quiet-link{font-size:12px!important}
  .jp-index a,.jp-quiet-link,.jp-light-link,.rules-origin a,.wiki-question-links a,.voters-footer button,.ranking-controls button,.gems-controls button{display:inline-flex;align-items:center;min-height:40px}

  .ban-table,.ban-table tbody{display:block;width:100%;min-width:0!important}
  .ban-table thead{display:none}
  .ban-table tbody tr{display:grid;grid-template-columns:1fr auto;gap:8px 14px;padding:16px;border-bottom:1px solid rgba(201,161,229,.14)}
  .ban-table tbody td{display:block;padding:0!important;border:0!important;min-width:0}
  .ban-table tbody td:first-child{grid-column:1}
  .ban-table tbody td:last-child{grid-column:2;grid-row:1;align-self:center}
  .ban-table tbody td[data-label]:not(:first-child):not(:last-child){grid-column:1/-1;display:flex;justify-content:space-between;gap:12px;font-size:14px}
  .ban-table tbody td[data-label]:not(:first-child):not(:last-child)::before{content:attr(data-label);color:#a996bb;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
  .ban-table tbody td.ban-empty{grid-column:1/-1}
  .ban-table-wrap,.ban-table-scroll{overflow:visible!important}
}
