[hidden]{display:none!important}.message-wrap{background:var(--bg-soft);flex:1;justify-content:center;padding:32px 20px;display:flex}.message-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:860px;box-shadow:var(--shadow);padding:24px 28px}.message-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.message-head h1{font-size:22px;font-weight:800}.message-list{flex-direction:column;gap:10px;display:flex}.message-item{border:1px solid var(--border);background:var(--card);cursor:pointer;transition:var(--transition);border-radius:8px;padding:14px 16px;position:relative}.message-item:hover{border-color:var(--text)}.message-item.unread{background:color-mix(in srgb, var(--accent) 4%, var(--card));border-color:color-mix(in srgb, var(--accent) 30%, var(--border))}.message-unread-dot{background:#ff4d4d;border-radius:50%;width:8px;height:8px;position:absolute;top:14px;right:14px}.message-item-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.message-item-head img{object-fit:cover;border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:32px;height:32px}.message-item-title{flex:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding-right:16px;display:flex}.message-item-title b{font-size:14px}.message-time{color:var(--text-soft);flex-shrink:0;font-size:12px}.message-item-body{color:var(--text-soft);flex-wrap:wrap;gap:6px;font-size:13px;display:flex}.message-who{color:var(--text);font-weight:600}.btn-danger{color:#ff4d4d;background:0 0;border-color:#ff4d4d}.btn-danger:hover{color:#fff;opacity:1;background:#ff4d4d}.modal{z-index:200;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:520px;max-height:90vh;box-shadow:var(--shadow);padding:24px;overflow-y:auto}.modal-card h2{margin-bottom:16px;font-size:18px;font-weight:800}.detail-row{border-bottom:1px dashed var(--border);color:var(--text-soft);justify-content:space-between;padding:8px 0;font-size:13px;display:flex}.detail-row b{color:var(--text);font-weight:600}.detail-text{border:1px solid var(--border);background:var(--bg-soft);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin-top:14px;padding:12px 14px;font-size:14px;line-height:1.7}.modal-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}
