:root { --party: #c4a8ff; --party-strong: #e2d4ff; }

.party-frame { display: grid; gap: .3rem; padding: .55rem .7rem .6rem; border: 1px solid color-mix(in srgb, var(--party) 34%, transparent); border-radius: .8rem;
  background: linear-gradient(180deg, rgba(16, 14, 30, .9), rgba(8, 8, 18, .92)); box-shadow: 0 .4rem 1.2rem rgba(0, 0, 0, .35); }
.pt-head { display: flex; align-items: center; gap: .45rem; font: 800 .74rem/1 var(--font-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--party-strong); }
.pt-head .ia-emblem { width: 1.1rem; height: 1.1rem; }
.pt-head small { color: var(--text-3); letter-spacing: .04em; }
.pt-leave { margin-left: auto; padding: .12rem .5rem; border-radius: .35rem; border: 1px solid rgba(255, 255, 255, .12); background: rgba(255, 255, 255, .04); color: var(--text-3); font: 700 .7rem/1.3 var(--font-ui); letter-spacing: .06em; cursor: pointer; }
.pt-leave:hover, .pt-leave:focus-visible { color: #fff; border-color: rgba(255, 255, 255, .3); }
.pt-members, .pt-invites { margin: 0; padding: 0; list-style: none; display: grid; gap: .15rem; }
.pt-member, .pt-invite { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .5rem; padding: .18rem .2rem; border-radius: .45rem; }
.pt-member.is-diving { background: linear-gradient(90deg, color-mix(in srgb, var(--party) 12%, transparent), transparent 80%); }
.pt-mark { position: relative; display: grid; place-items: center; width: 1.55rem; height: 1.55rem; }
.pt-mark .ia-emblem { width: 1.35rem; height: 1.35rem; color: var(--skill); }
.pt-dot { position: absolute; right: -.05rem; bottom: -.05rem; width: .5rem; height: .5rem; border-radius: 50%; border: 2px solid #0b0b14; background: #5a5d6a; }
.pt-member.is-online .pt-dot { background: #6cd98a; }
.pt-copy { display: grid; min-width: 0; line-height: 1.25; }
.pt-name { display: flex; align-items: center; gap: .35rem; font: 700 .9rem var(--font-ui); color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pt-name .chat-name { color: #fff; font: inherit; }
.pt-name .chat-name::after { content: none; }
.pt-name small { color: var(--text-3); font-size: .74rem; }
.pt-crown { display: inline-grid; color: var(--gold-1); }
.pt-crown .ia-glyph { width: .78rem; height: .78rem; }
.pt-doing { font: 600 .76rem var(--font-ui); color: var(--text-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pt-doing.is-off { color: var(--text-3); }
.pt-more { display: grid; place-items: center; width: 1.5rem; height: 1.5rem; border: 0; border-radius: .35rem; background: transparent; color: var(--text-3); cursor: pointer; }
.pt-more:hover, .pt-more:focus-visible { background: rgba(255, 255, 255, .07); color: #fff; }
.pt-more .ia-glyph { width: .9rem; height: .9rem; }
.pt-dive { display: flex; align-items: center; gap: .45rem; margin: 0; padding: .3rem .4rem; border-radius: .5rem; background: rgba(61, 127, 230, .12); font: 600 .8rem var(--font-ui); color: var(--text-2); }
.pt-dive .ia-emblem { width: 1.15rem; height: 1.15rem; flex: none; }
.pt-dive b { color: #fff; }
.pt-dive.is-none { background: transparent; color: var(--text-3); }
.pt-dive.is-none .ia-glyph { width: .85rem; height: .85rem; }
.pt-join, .pt-accept { margin-left: auto; display: inline-flex; align-items: center; gap: .25rem; padding: .16rem .6rem; border-radius: .4rem; border: 1px solid color-mix(in srgb, var(--gold-1) 60%, transparent);
  background: linear-gradient(180deg, #f6d27e, #d7a443); color: #2b1d07; font: 800 .74rem/1.3 var(--font-ui); letter-spacing: .04em; cursor: pointer; }
.pt-accept .ia-glyph { width: .78rem; height: .78rem; }
.pt-with { margin-left: auto; display: inline-flex; align-items: center; gap: .2rem; color: #9fe8b6; font: 700 .74rem var(--font-ui); }
.pt-with .ia-glyph { width: .8rem; height: .8rem; }
.pt-acts { display: inline-flex; gap: .3rem; }
.pt-decline { display: grid; place-items: center; width: 1.5rem; height: 1.5rem; border-radius: .35rem; border: 1px solid rgba(255, 255, 255, .12); background: rgba(255, 255, 255, .04); color: var(--text-3); cursor: pointer; }
.pt-decline .ia-glyph { width: .8rem; height: .8rem; }
.pt-note { margin: 0; font: 600 .78rem/1.4 var(--font-ui); color: var(--text-3); }

@media (min-width: 761px) and (min-height: 501px), (min-width: 761px) and (pointer: fine), (min-width: 761px) and (pointer: none) {
  .is-hud .chat-over > .party-frame { pointer-events: auto; width: min(19rem, 100%); }
}
.fr-side > .party-frame.is-window { border-radius: .7rem; }
.friends-page.is-phone > .party-frame { margin: .2rem 0 .6rem; }

.chat-line.ch-party::before { background: var(--party); }
.chat-line.ch-party .cl-plate > .chat-name, .chat-line.k-chat.ch-party .who { color: var(--party); }
.chat-input .chat-say.is-fixed.ch-party { color: var(--party); }
