.playerCardModal.pc-modern { background: #0d152a80; padding: 20px; align-items: center; }
.pc-sheet { width: min(420px,100%); box-sizing: border-box; max-height: calc(100dvh - 40px); overflow: auto; background: var(--panel,#fff); color: var(--text,#243147); border: 1px solid var(--stroke,#dce1eb); border-radius: 24px; padding: 16px 24px 24px; box-shadow: 0 24px 80px #0003; animation: pc-enter 200ms ease-out; }
.pc-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.pc-toolbar h2 { font-size: 15px; color: var(--muted,#728099); font-weight: 600; margin: 0; }
.pc-close { display: grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 12px; background: transparent; color: inherit; cursor: pointer; }
.pc-close svg { width: 22px; height: 22px; }
.pc-close:hover { background: #8793ad12; }
.pc-sheet button:focus-visible { outline: 2px solid #5a87e0; outline-offset: 3px; }
.pc-identity { display: flex; align-items: center; gap: 14px; margin-bottom: 25px; }
.pc-avatar { flex: 0 0 64px; width: 64px; height: 64px; }
.pc-avatar .dd-avatar-art,.pc-avatar .dd-avatar-legacy { width: 100%; height: 100%; }
.pc-identity h3 { flex: 1; min-width: 0; font-size: 20px; font-weight: 750; line-height: 1.2; overflow-wrap: anywhere; margin: 0; }
.pc-record { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--stroke,#dce1eb); border-bottom: 1px solid var(--stroke,#dce1eb); padding: 17px 0; margin-bottom: 25px; }
.pc-record > div { display: grid; gap: 4px; text-align: center; }
.pc-record > div + div { border-left: 1px solid var(--stroke,#dce1eb); }
.pc-record strong { font-size: 23px; font-variant-numeric: tabular-nums; line-height: 1.15; }
.pc-record span { font-size: 11px; color: var(--muted,#728099); }
.pc-accuracy h3 { font-size: 13px; font-weight: 650; margin: 0 0 17px; }
.pc-area + .pc-area { margin-top: 15px; }
.pc-area-label { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; font-size: 12px; margin-bottom: 7px; }
.pc-area-label b { color: var(--muted,#728099); font-size: 11px; font-weight: 500; font-variant-numeric: tabular-nums; white-space: nowrap; }
.pc-meter { height: 6px; border-radius: 4px; background: #8694af25; overflow: hidden; }
.pc-meter i { display: block; height: 100%; border-radius: inherit; background: #638cda; }
.pc-actions { display: flex; margin-top: 25px; }
.pc-actions .btn { width: 100%; min-height: 44px; }
.pc-private,.pc-error { font-size: 14px; color: var(--muted,#728099); line-height: 1.5; margin: 16px 0; }
.pc-loading { min-height: 370px; display: grid; gap: 20px; align-content: start; padding-top: 10px; }
.pc-loading i { display: block; height: 70px; border-radius: 14px; background: #8694af18; }
.pc-loading i:last-child { height: 150px; }
@keyframes pc-enter { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@media(max-width:600px) { .playerCardModal.pc-modern { align-items: flex-end; padding: 0; } .pc-sheet { width: 100%; max-height: calc(100dvh - 24px); border-radius: 24px 24px 0 0; padding: 12px 24px max(24px,env(safe-area-inset-bottom)); } }
@media(prefers-reduced-motion:reduce) { .pc-sheet { animation: none; } }
