/* Standalone messaging styles; do not alter existing global/map CSS. */
.pm-msg {max-width:940px;margin-inline:auto;padding-bottom:45px}
.pm-msg * {box-sizing:border-box}
.pm-msg-tabs {display:flex;flex-wrap:wrap;gap:9px;margin:12px 0 20px}
.pm-msg-tabs a {background:var(--paper,#fff);color:var(--ink,#222);text-decoration:none;border:1px solid var(--line,#ddd);border-radius:9px;padding:10px 14px;font-weight:650}
.pm-msg-row {display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0;padding:14px;background:var(--paper,#fff);border:1px solid var(--line,#ddd);border-radius:12px}
.pm-msg-row-link {color:var(--ink,#222);text-decoration:none}
.pm-msg-row-link:hover {border-color:var(--gold,#dfa643)}
.pm-msg-row p {margin:5px 0 0;max-width:590px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted,#555)}
.pm-msg-row-side {flex:none;text-align:right}
.pm-msg-row-side small {display:block;margin-bottom:6px}
.pm-msg-count {display:inline-block;border-radius:13px;padding:3px 9px;background:#1d6657;color:white;font-weight:700;font-size:12px}
.pm-msg-list {display:flex;flex-direction:column;gap:12px;margin:12px 0}
.pm-msg-bubble {width:min(85%,690px);background:var(--paper,#fff);border:1px solid var(--line,#ddd);border-radius:14px;padding:12px 15px;box-shadow:0 2px 9px #0001}
.pm-msg-mine {align-self:flex-end;border-left:4px solid #bc821e}
.pm-msg-meta {font-size:.82rem;color:var(--muted,#555);margin:0 0 8px}
.pm-msg-body {margin:0;white-space:normal;overflow-wrap:anywhere;line-height:1.55}
.pm-msg-report {margin-top:12px;font-size:.9rem}
.pm-msg-report summary {cursor:pointer}
.pm-msg-compose,.pm-msg-report-card {margin:15px 0 20px;padding:17px;background:var(--paper,#fff);border:1px solid var(--line,#ddd);border-radius:15px}
.pm-msg-compose label,.pm-msg-report label {display:block;margin:8px 0}
.pm-msg-compose textarea,.pm-msg-compose select,.pm-msg-report textarea {display:block;width:100%;max-width:100%;margin:7px 0 12px;border:1px solid #a4a4a4;border-radius:8px;padding:10px;font:inherit}
.pm-msg-actions {display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.pm-msg-actions form {margin:0}
.pm-msg-context {background:#eee4cf26;padding:8px;border-bottom:1px solid var(--line,#ddd);overflow-wrap:anywhere}
.pm-msg-header-indicator {position:absolute;right:46px;top:-5px;min-width:20px;padding:2px 5px;border-radius:12px;background:#a32623;color:white;font-size:12px;font-weight:800;text-align:center}
.pm-msg-header-link {position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;color:white;text-decoration:none;border-radius:8px;border:1px solid #ffffff55;margin-right:10px;font-size:21px}
.pm-msg-header-link .pm-msg-header-indicator {right:-7px;top:-8px}
.pm-msg-home-notice {border:2px solid var(--gold,#dfa643);background:var(--paper,#fff);border-radius:13px;padding:12px 17px;margin:0 0 16px}
.pm-msg-home-notice a {font-weight:800}
.pm-msg-mobile-unread {display:inline-block;background:#ac3025;color:white;border-radius:10px;padding:1px 5px;font-size:11px}
@media (max-width:540px) {.pm-msg-bubble{width:94%}.pm-msg-row{align-items:flex-start}.pm-msg-actions button{font-size:.86rem}}
