.player-frame { overflow: visible; }
.player-topbar { gap: 22px; }
.player-nav { gap: clamp(15px, 2.5vw, 34px); }
.player-actions { gap: 8px; }
.player-actions .outline-button { min-height: 34px; padding: 0 9px; font-size: 8px; }
.player-actions [hidden] { display: none !important; }
.player-main { max-width: 1120px; margin: 0 auto; }
.player-heading { display: flex; align-items: end; justify-content: space-between; padding: 51px 0 22px; border-bottom: 1px solid var(--line); }
.player-heading .eyebrow { margin-bottom: 9px; }
.player-heading h1 { font-size: clamp(42px, 5.5vw, 65px); line-height: .94; }
.player-loading { margin: 24px 0; color: var(--muted); font: 9px var(--mono); }
.player-loading[hidden] { display: none; }
.player-gate { max-width: 650px; margin: 55px auto 100px; padding: 25px 0; border-top: 1px solid var(--line-bright); border-bottom: 1px solid var(--line); }
.player-gate .eyebrow { margin-bottom: 10px; }
.player-gate h2 { margin: 0 0 12px; font: 500 28px/1.1 var(--display); }
.player-gate > p:not(.eyebrow) { max-width: 540px; margin: 0 0 18px; color: var(--paper-dim); font-size: 11px; line-height: 1.75; }
.player-gate .join-button { min-width: 210px; min-height: 40px; font: 8px var(--mono); }
.player-error { margin: 26px 0; padding: 15px; border-left: 2px solid var(--alert); background: rgba(239,112,88,.09); }
.player-error .eyebrow { margin-bottom: 6px; }
.player-error p:last-child { margin: 0; color: var(--paper-dim); font-size: 11px; }
.player-dashboard[hidden], .player-gate[hidden], .player-error[hidden] { display: none; }
.player-identity-band { min-height: 150px; display: flex; align-items: center; padding: 20px 0; border-bottom: 1px solid var(--line); gap: 17px; }
.player-avatar-large { width: 86px; height: 86px; flex: 0 0 auto; border: 1px solid var(--line-bright); border-radius: 50%; background: var(--ink-soft); object-fit: cover; }
.player-identity { flex: 1; min-width: 0; }
.player-identity .eyebrow { margin-bottom: 6px; }
.player-identity h2 { margin: 0; font: 600 30px/.98 var(--display); overflow-wrap: anywhere; }
.player-identity p { margin: 6px 0 0; color: var(--muted); font: 9px var(--mono); }
.player-profile-link { flex: 0 0 auto; }
.player-account-grid, .player-private-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.player-account-grid { padding-top: 18px; }
.player-panel { min-width: 0; padding: 18px; border: 1px solid var(--line); background: rgba(24,20,23,.68); }
.player-panel-heading { display: flex; align-items: start; justify-content: space-between; gap: 10px; }
.player-panel-heading .eyebrow { margin-bottom: 6px; }
.player-panel-heading h2 { margin: 0; font: 500 20px/1 var(--display); }
.player-data-list { display: grid; margin: 17px 0 0; }
.player-data-list > div { min-height: 44px; display: grid; grid-template-columns: minmax(120px,.8fr) minmax(0,1.2fr); align-items: center; border-top: 1px solid var(--line); gap: 10px; }
.player-data-list dt { color: var(--muted); font: 8px var(--mono); }
.player-data-list dd { margin: 0; color: var(--paper); font-size: 10px; overflow-wrap: anywhere; }
.discord-unlinked-info { padding-top: 12px; }
.discord-unlinked-info p { margin: 0 0 12px; color: var(--paper-dim); font-size: 10px; line-height: 1.6; }
.discord-unlinked-info .outline-button { min-height: 34px; font: 8px var(--mono); }
.rp-panel { margin-top: 18px; }
.rp-form { margin-top: 15px; }
.rp-form label { display: block; margin-bottom: 7px; color: var(--muted); font: 8px var(--mono); }
.rp-form-controls { display: flex; gap: 8px; }
.rp-form-controls input { min-width: 0; min-height: 39px; flex: 1; padding: 0 10px; border: 1px solid var(--line-bright); outline: 0; background: var(--ink); color: var(--paper); font: 11px var(--sans); }
.rp-form-controls input:focus { border-color: var(--signal); }
.rp-form-controls .join-button { min-width: 145px; min-height: 39px; border: 0; cursor: pointer; font: 8px var(--mono); }
.player-dossier-link { margin-top: 16px; }
.player-private-grid { margin-top: 18px; }
.player-note { margin: 15px 0 0; color: var(--muted); font-size: 9px; line-height: 1.7; }
.player-privacy-note { padding: 12px 14px; border-left: 2px solid var(--signal); background: rgba(189,30,50,.075); }
.player-stats { display: grid; margin-top: 16px; }
.player-stat { min-height: 38px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); gap: 12px; }
.player-stat span { color: var(--muted); font: 8px var(--mono); overflow-wrap: anywhere; }
.player-stat strong { color: var(--paper); font: 500 15px var(--display); }
.player-footer { margin-top: 55px; }
@media (max-width: 900px) {
    .player-frame { padding-right: 4%; padding-left: 4%; }
    .player-topbar { gap: 12px; }
    .player-nav { gap: 13px; }
}
@media (max-width: 700px) {
    .player-frame { padding-right: 17px; padding-left: 17px; }
    .player-topbar { min-height: 65px; flex-wrap: wrap; padding: 9px 0; gap: 10px; }
    .player-topbar .brand { flex: 1; }
    .player-nav { width: 100%; height: 34px; display: flex; justify-content: space-between; order: 3; gap: 7px; }
    .player-nav .nav-link { height: 34px; font-size: 9px; }
    .player-nav .nav-link.is-active::after { display: none; }
    .player-actions { gap: 5px; }
    .player-actions .outline-button { min-height: 30px; padding: 0 6px; font-size: 7px; }
    .player-actions .language-button { font-size: 8px; }
    .player-heading { padding-top: 36px; }
    .player-heading h1 { font-size: 45px; }
    .player-identity-band { align-items: flex-start; flex-wrap: wrap; }
    .player-avatar-large { width: 63px; height: 63px; }
    .player-identity h2 { font-size: 25px; }
    .player-profile-link { width: 100%; margin-left: 80px; font-size: 8px; }
    .player-account-grid, .player-private-grid { grid-template-columns: 1fr; gap: 12px; }
    .player-panel { padding: 14px; }
    .rp-form-controls { align-items: stretch; flex-direction: column; }
    .rp-form-controls .join-button { width: 100%; }
    .player-footer { margin-top: 38px; }
}