.friends-page{--friends-accent:var(--color-gold-deep);--friends-radius:1.25rem;color:var(--player-profile-text-primary);margin:0 0 4rem;padding:0 clamp(1rem,2.5vw,2.5rem)}.friends-page [hidden]{display:none!important}.friends-page .sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.friends-card{background-color:var(--player-profile-card-bg);border:1px solid var(--player-profile-border);border-radius:var(--friends-radius);padding:1.25rem 1.5rem}.friends-page h2{color:var(--h2-title-color);align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.15rem;font-weight:700;display:flex}.friends-muted{color:var(--player-profile-text-secondary);margin:0}.friends-muted.small{font-size:.8rem}.friend-count{text-align:center;background-color:var(--player-profile-input-bg);min-width:1.6rem;color:var(--player-profile-text-primary);border-radius:999px;padding:.1rem .5rem;font-size:.8rem}.friends-status,.friends-feedback{text-align:center;color:var(--player-profile-text-secondary);margin:1.25rem 0 0}.friends-feedback{width:fit-content;color:var(--color-white);background-color:var(--color-green);border-radius:999px;margin:1.25rem auto 0;padding:.5rem 1rem}.friends-feedback:empty{display:none}.friends-alert{border:1px solid var(--color-red);background-color:color-mix(in srgb, var(--color-red) 12%, transparent);border-radius:1rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.25rem;padding:.75rem 1rem;display:flex}.friends-guest{text-align:center;flex-direction:column;align-items:center;gap:1rem;max-width:36rem;margin:2rem auto 0;padding:2.5rem 2rem;display:flex}.friends-guest h2{margin:0;font-size:1.5rem}.friends-guest-icon{font-size:3rem;line-height:1}.friends-account{background:linear-gradient(120deg, color-mix(in srgb, var(--friends-accent) 14%, transparent), transparent 60%), var(--player-profile-card-bg);align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.friends-account-text{flex:1;min-width:0}.friends-account-name{margin:0 0 .15rem;font-size:1.2rem}.friends-account-name strong{color:var(--h1-title-color)}.friends-grid{grid-template-columns:minmax(0,1fr) minmax(0,26rem);align-items:start;gap:1.25rem;margin-top:1.25rem;display:grid}.friends-side{flex-direction:column;gap:1.25rem;display:flex}@media (width<=860px){.friends-grid{grid-template-columns:minmax(0,1fr)}.friends-side{order:-1}}.friends-incoming:has(.friend-row){border-color:var(--friends-accent);box-shadow:0 0 0 1px var(--friends-accent), 0 8px 24px color-mix(in srgb, var(--friends-accent) 18%, transparent)}.friends-incoming:has(.friend-row) .friend-count{background-color:var(--friends-accent);color:var(--color-black)}.friends-input{border:1px solid var(--player-profile-border);background-color:var(--player-profile-input-bg);width:100%;color:var(--player-profile-text-primary);border-radius:999px;padding:.65rem 1rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.friends-input:focus{border-color:var(--friends-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--friends-accent) 25%, transparent);outline:none}.friends-add-form{flex-direction:column;gap:.6rem;display:flex}.friends-search-wrapper{margin-bottom:.5rem;position:relative}.friends-search-wrapper svg{width:18px;height:18px;color:var(--player-profile-text-secondary);pointer-events:none;position:absolute;top:50%;left:.9rem;transform:translateY(-50%)}.friends-search-wrapper .friends-input{padding-left:2.5rem}.friend-list{margin:0;padding:0;list-style:none}.friend-list[data-list=friends]{grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));gap:.5rem 1.5rem;display:grid}.friend-list[data-list=friends] .friend-row{border:1px solid var(--player-profile-border);margin:0}.friend-row{border-radius:1rem;justify-content:space-between;align-items:center;gap:.75rem;margin:0 -.75rem;padding:.6rem .75rem;transition:background-color .2s;display:flex}.friend-row:hover{background-color:var(--player-profile-input-bg)}.friend-list.compact .friend-row{flex-wrap:wrap}.friend-list.compact .friend-person{flex-basis:12rem}.friend-person{min-width:0;color:inherit;flex:1;align-items:center;gap:.85rem;text-decoration:none;display:flex}.friend-person[href]:hover .friend-name{color:var(--h1-title-color)}.friend-profile{flex-direction:column;min-width:0;display:flex}.friend-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;transition:color .2s;overflow:hidden}.friend-tag{color:var(--player-profile-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:.8rem;overflow:hidden}.friend-avatar{background-color:var(--player-profile-input-bg);width:48px;height:48px;color:var(--player-profile-text-primary);box-shadow:0 0 0 2px var(--player-profile-card-bg), 0 0 0 4px var(--player-profile-border);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid;position:relative;overflow:hidden}.friend-list[data-list=friends] .friend-avatar{box-shadow:0 0 0 2px var(--player-profile-card-bg), 0 0 0 4px var(--friends-accent)}.friend-list.compact .friend-avatar{width:40px;height:40px}.friend-avatar.large{width:64px;height:64px;box-shadow:0 0 0 3px var(--player-profile-card-bg), 0 0 0 5px var(--friends-accent);font-size:1.5rem}.friend-avatar img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.friends-empty{border:1px dashed var(--player-profile-border);text-align:center;color:var(--player-profile-text-secondary);border-radius:1rem;margin:.25rem 0 0;padding:1rem;font-size:.9rem}.friend-actions{flex-wrap:wrap;gap:.5rem;display:flex}.friend-list.compact .friend-actions{margin-left:auto}.friend-button{white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.5rem 1.1rem;font-size:.85rem;font-weight:600;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s;display:inline-flex}.friend-button svg{width:16px;height:16px}.friend-button:hover:not(:disabled){transform:translateY(-1px)}.friend-button:disabled{opacity:.5;cursor:not-allowed}.friend-button.primary{background:linear-gradient(90deg, var(--golden-gradient-shift-1), var(--golden-gradient-shift-3));color:var(--color-black);padding:.65rem 1.1rem}.friend-button.ghost,.friend-button.secondary{border-color:var(--player-profile-border);color:var(--player-profile-text-primary);background-color:#0000}.friend-button.ghost:hover:not(:disabled),.friend-button.secondary:hover:not(:disabled){border-color:var(--friends-accent)}.friend-button.danger{color:var(--player-profile-text-secondary);background-color:#0000;border-color:#0000}.friend-button.danger:hover:not(:disabled),.friend-button.danger:focus-visible{border-color:var(--color-red);color:var(--color-red)}.friend-button.danger-solid{background-color:var(--color-red);color:var(--color-white)}.friends-dialog{border:1px solid var(--player-profile-border);border-radius:var(--friends-radius);background-color:var(--background-color);max-width:min(28rem,100% - 2rem);color:var(--player-profile-text-primary);margin:auto;padding:1.5rem}.friends-dialog::backdrop{backdrop-filter:blur(2px);background-color:#0009}.friends-dialog .friend-actions{justify-content:flex-end;margin-top:1.25rem}@media (width<=520px){.friends-account{flex-wrap:wrap}.friends-account [data-refresh]{width:100%}}
