/* cherish-party (patch-party-ui.py v2, 2026-09-09) — 전역 파티 초대 배너.
   body 직속 DOM 이라 어느 화면(홈·배틀 방·도감)에서도 뜬다. cherish-skin.css 의 토큰을 쓰되
   없어도 성립하도록 전부 폴백을 적는다 (스킨보다 먼저 로드될 수 있다). */
/* ⚠️ top 은 앱바(#header, 업스트림 고정 50px) **아래**여야 한다. 10px 로 뒀더니 앱바 위에
   올라타 배틀 방 칩·유저바와 겹쳤다 (2026-09-09 실측 — 탭이 적은 화면에서는 우연히
   빈자리에 놓여 멀쩡해 보인다). 모바일도 같은 50px 이다. */
.cw-party-invite {
	position: fixed; z-index: 90; left: 50%; top: 58px; transform: translateX(-50%);
	display: flex; align-items: center; gap: 10px; max-width: min(560px, calc(100vw - 20px));
	padding: 9px 10px 9px 12px; border-radius: 14px;
	border: 1px solid rgba(255, 255, 255, .18);
	background: linear-gradient(135deg, #4a3355, #2a2334);
	box-shadow: 0 14px 34px -14px rgba(20, 10, 24, .8);
	color: #fff; font-size: 9.5pt; line-height: 1.35;
	animation: cw-pi-in .22s ease-out;
}
@keyframes cw-pi-in { from { opacity: 0; transform: translateX(-50%) translateY(-8px); } }
.cw-pi-ic { flex: 0 0 auto; font-size: 15px; }
.cw-pi-text { min-width: 0; flex: 1 1 auto; word-break: keep-all; }
.cw-pi-text b { color: #ffd7e0; }
.cw-pi-act { flex: 0 0 auto; display: flex; gap: 6px; }
.cw-party-invite button {
	padding: 6px 13px; border-radius: 10px; border: 0; cursor: pointer;
	font: inherit; font-size: 9pt; white-space: nowrap;
}
.cw-pi-yes { background: var(--cw-cta-grad, linear-gradient(180deg, #fb7185, #be123c)); color: #fff; font-weight: 700; }
.cw-pi-no { background: rgba(255, 255, 255, .14); color: rgba(255, 255, 255, .82); }
.cw-pi-yes:hover { filter: brightness(1.08); }
.cw-pi-no:hover { background: rgba(255, 255, 255, .22); }
/* 홈 「파티 초대」 카드 — 배너와 같은 급이라는 게 보이게 왼쪽에 띠를 세운다 */
.cw-party-got { border-left: 4px solid var(--cw-accent, #e11d48); }
/* 파트너가 화면을 벗어났을 때의 한 줄 (2026-09-21). 경고가 아니라 **설명**이라
   빨강을 쓰지 않는다 — 곧 돌아오면 저절로 사라지는 상태다. */
.cw-party-away {
	margin: 6px 0 0; padding: 7px 10px; border-radius: 10px;
	background: rgba(255, 255, 255, .07);
	border-left: 3px solid rgba(255, 255, 255, .3);
	font-size: 9pt; line-height: 1.45; word-break: keep-all;
}
.cw-party-away strong { font-weight: 700; }
@media (max-width: 700px) {
	/* 폰에서는 상단 앱바가 얇아진다(patch-appbar v6). 배너는 그 아래에 가로로 꽉 채운다. */
	.cw-party-invite {
		left: 8px; right: 8px; transform: none; max-width: none; top: 56px;
		flex-wrap: wrap; row-gap: 8px;
	}
	@keyframes cw-pi-in { from { opacity: 0; transform: translateY(-8px); } }
	/* 두 줄로 접는다 — [🤝 누가 불렀어요] / [수락][거절]. 텍스트에 basis 100% 를 주면
	   아이콘만 첫 줄에 남아 **석 줄**이 된다 (2026-09-09 실측). */
	.cw-pi-text { flex: 1 1 auto; }
	.cw-pi-act { flex: 0 0 100%; justify-content: flex-end; }
	.cw-party-invite button { padding: 7px 15px; }
}
