.pn-head h2{font:700 28px/1.1 var(--display);letter-spacing:.04em;margin:4px 0 0}.pn-head .pn-intro,.pn-head p{max-width:none;font-size:var(--fs-body);color:var(--text-2);margin:8px 0 0;line-height:1.5}.pn-foot{border-top:1px solid var(--line);flex-wrap:wrap;align-items:stretch;gap:10px;margin-top:18px;padding-top:14px;display:flex}.pn-foot>button{white-space:nowrap;justify-content:center;align-items:center;gap:8px;min-height:40px;margin:0;display:inline-flex}.pn-foot>button.primary{padding-top:0;padding-bottom:0}.pn-foot>.pn-end{margin-left:auto}.pn-foot.even>button{flex:1 1 0}.pn-foot>.error{align-self:center;margin:0}.pn-foot kbd{opacity:.8;font-size:10px;line-height:13px}.pn-fine{font-size:var(--fs-small);color:var(--dim);margin:10px 0 0}.pn-fine a{color:var(--accent)}.title-card.pf{text-align:left;flex-direction:column;width:min(920px,94vw);max-width:none;height:min(760px,100vh - 32px);padding:24px 28px 18px;display:flex}.pf-head{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.pf-name{font:700 30px/1.05 var(--display);letter-spacing:.03em;margin:4px 0 0}.pf-title{font:600 var(--fs-small) var(--ui);letter-spacing:0;color:var(--gold);vertical-align:4px;margin-left:10px}.pf-oath{color:#ff8a7a}.pf-wallet{flex:none;gap:22px;display:flex}.pf-coin{font:700 22px/1 var(--display);white-space:nowrap;flex-direction:column;align-items:flex-end;display:flex}.pf-coin small{font:600 11.5px var(--ui);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin-top:4px}.pf-coin.yen{color:var(--gold)}.pf-coin.shards{color:#c08bff}.pf-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:6px;margin-top:16px;padding-bottom:12px;display:flex}.pf-tabs button.ghost.small{padding:6px 14px;font-size:13px}.title-card.pf .pf-intro{max-width:none;font-size:var(--fs-body);color:var(--text-2);margin:12px 0 0;line-height:1.5}.pf-body{flex:auto;min-height:0;margin:12px -8px 0;padding:0 8px 6px;overflow-y:auto}.pf-body h3{font:600 var(--fs-label) var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin:20px 0 8px}.pf-body h3:first-child{margin-top:2px}.pf-body h3 .pf-hint{font-size:var(--fs-small);letter-spacing:0;text-transform:none;color:var(--dim);margin-left:8px;font-weight:400}.pf .pf-note{max-width:none;font-size:var(--fs-small);color:var(--dim);margin:8px 0 0;line-height:1.45}.pf .faction-detail p{max-width:none}.pf-body .error{margin-top:10px}.pf-section{border-top:1px solid var(--line);padding:14px 0}.pf-section:first-child{border-top:0;padding-top:2px}.pf-section>h3{margin-top:0}.pf-stats{font-size:var(--fs-small);color:var(--dim);flex-wrap:wrap;gap:6px 22px;display:flex}.pf-stats b{color:var(--text);font-weight:600}.pf .shop-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin:0}.pf .shop-item{text-align:left;gap:4px;min-height:112px;padding:12px}.pf .shop-item .si-text{line-height:1.4}.pf .si-foot{font-size:var(--fs-small);color:var(--dim);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:8px;display:flex}.pf .si-foot button.ghost.small{color:var(--text);background:#080a0ecc;padding:5px 12px}.pf .si-foot .si-yen{font:700 13px var(--display);color:var(--gold)}.pf .si-done{font:600 var(--fs-label) var(--ui);letter-spacing:.1em;text-transform:uppercase;color:var(--good)}.pf .shop-item.done{background:#7dffb00a;border-color:#7dffb059}.signin input[type=email]{text-transform:none;letter-spacing:normal}.key-row button{align-self:stretch}.pf .signin{gap:8px;margin:0}.pf .signin>.dim{font-size:var(--fs-small);color:var(--text-2);margin:0}.pf .signin-who{font-size:var(--fs-small);justify-content:space-between;align-items:center;gap:12px;display:flex}.pf .key-row{justify-content:flex-start;margin-top:0}.pf .key-row input{width:min(300px,100%)}.pf .friend-code{font-size:var(--fs-small);color:var(--dim);align-items:center;gap:10px;margin:0 0 10px;display:flex}.pf .friend-row{padding:8px 0}.pf .friend-row>span:nth-child(2){flex:1}.pf .friend-row .dim{margin:0}.pf .set-row.boards-opt{grid-template-columns:minmax(0,1fr) auto}.pf .set-row.boards-opt>i{display:none}.pf .faction-row{margin:10px 0}.pf .faction-detail{margin-bottom:0}.pf-season-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.pf-season-head b{font:700 18px var(--display);letter-spacing:.03em}.pf .season-bar{margin:10px 0 12px}.pf .track-row{margin:0 0 8px}.pf .track-step.prize b{background:var(--gold);border-radius:50%;width:6px;height:6px;top:4px;right:4px}.match-menu .pn-head{text-align:center}.match-menu .pn-head h2{font-size:30px}.mm-list>button{justify-content:center;align-items:center;gap:8px;min-height:44px;margin:0;display:flex}.mm-list>button.ghost{padding:0 14px}.match-menu .settings,.match-menu .mm-keys{margin:16px 0 0}.match-menu .mm-keys{max-height:calc(100vh - 250px);padding-right:4px;overflow-y:auto}.match-menu .pn-head .mm-warn{margin:10px auto 0}:is(#ui:has(.pause) .toasts,#ui:has(.end) .toasts,#ui:has(.closed) .toasts){display:none}.closed-card .pn-head p{margin-left:auto;margin-right:auto}.closed-card .pn-why{font-size:var(--fs-body);color:var(--text);margin:10px 0 0}.catalyst.glass{z-index:6;width:340px;padding:12px 14px 14px;bottom:142px}.cat-row{align-items:stretch;gap:8px}.cat-row>button{flex:1 1 0;justify-content:center;align-items:center;gap:6px;min-height:36px;margin:0;display:inline-flex}.cat-row>button.primary{padding:0 12px;font-size:14px}.cat-row kbd{font-size:10px;line-height:13px}.end-card .pn-foot{justify-content:center}.end-card .pn-foot.even>button{max-width:220px}.unlock-card .pn-head h2{font-size:26px}.unlock-card .unlock-list{margin:12px 0 0}.unlock-card .signin{margin:14px 0 0}.unlock-card .signin>.dim:first-child{display:none}.unlock-card .key-row{justify-content:flex-start;margin-top:0}.unlock-card .key-row input{flex:1;width:auto;min-width:0}.unlock-card .spinner{margin:14px 0 0}.trial-banner button.primary{white-space:nowrap;flex:none}.friend-code{align-items:center;gap:10px;display:flex}.friend-code .copy-btn{margin-left:4px}@media (max-width:640px){.title-card.pf{height:auto;padding:18px 16px 14px}.pf-head{flex-wrap:wrap;align-items:flex-start}.pf-body{flex:none;overflow:visible}.pf-tabs{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.pf-tabs button.ghost.small{flex:none}.pn-foot>.pn-end{margin-left:0}.pf .track-row{grid-template-columns:repeat(5,minmax(0,1fr))}}
