
    .search-bar.svelte-1bidaqr {
        padding: 10px;
        border-bottom: 1px solid var(--mac-secondary);
    }

    .search-bar.svelte-1bidaqr input:where(.svelte-1bidaqr) {
        width: 100%;
        padding: 5px;
        border: 1px solid var(--mac-secondary);
        border-radius: 5px;
    }

    .chat-card.svelte-1bidaqr {
        display: flex;
        align-items: center;
        margin: 5px;
        padding: 10px;
        background: #f0f0f0;
        border-radius: 10px;
        /*border-bottom: 1px solid var(--mac-secondary);*/
        cursor: pointer;
        scrollbar-width: thin;
        scrollbar-color: rgba(0,0,0,0.3) transparent;
        transition: scrollbar-color 0.2s;
    }

    /* 隐藏滚动条轨道，默认透明 */
    /* (unused) .chat-cards::-webkit-scrollbar {
        width: 8px;
        background: transparent;
    }*/

    /* 滚动条滑块 */
    /* (unused) .chat-cards::-webkit-scrollbar-thumb {
        background-color: rgba(0,0,0,0);
        border-radius: 4px;
        transition: background-color 0.2s;
    }*/

    /* 鼠标悬停或者滚动时显示滚动条 */
    /* (unused) .chat-cards:hover::-webkit-scrollbar-thumb,
    .chat-cards:active::-webkit-scrollbar-thumb {
        background-color: rgba(0,0,0,0.3);
    }*/

    .chat-card.svelte-1bidaqr:hover {
        background-color: rgba(0, 122, 255, 0.1);
    }

    .avatar.svelte-1bidaqr {
        width: 48px;
        height: 48px;
        border-radius: 5px;
        margin-right: 10px;
    }

    .chat-info.svelte-1bidaqr {
        flex: 1;
    }

    .chat-info.svelte-1bidaqr h3:where(.svelte-1bidaqr) {
        margin: 0;
        font-size: 14px;
    }

    .chat-info.svelte-1bidaqr p:where(.svelte-1bidaqr) {
        margin: 0;
        font-size: 14px;
        color: var(--mac-secondary);
    }

    .unread-badge.svelte-1bidaqr {
        background-color: var(--mac-primary);
        color: white;
        border-radius: 10.0px;
        padding: 2px 6px;
        font-size: 12px;
        min-width: 20px;
        text-align: center;
    }

    /* 选中样式：背景#0066ff + 名称#ffffff + 最后消息#cccccc */
    .chat-card.active.svelte-1bidaqr {
        background-color: #0066ff;
    }
    .chat-card.active.svelte-1bidaqr .chat-info:where(.svelte-1bidaqr) h3:where(.svelte-1bidaqr) {
        color: #ffffff;
    }
    .chat-card.active.svelte-1bidaqr .chat-info:where(.svelte-1bidaqr) p:where(.svelte-1bidaqr) {
        color: #cccccc;
    }
    .chat-card.active.svelte-1bidaqr:hover {
        background-color: #0066ff;
    }

    .modal-overlay.svelte-5r0ao9 {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.2);
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 1000;
    }

    .modal-content.svelte-5r0ao9 {
        background-color: white;
        padding: 20px;
        border-radius: 10px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        text-align: center;
        width: 480px;
    }

    .title_bar.svelte-5r0ao9 {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        margin-bottom: 15px;
    }

    .close-x-btn.svelte-5r0ao9 {
        border: none;
        background: transparent;
        width: 32px;
        height: 32px;
        cursor: pointer;
        padding: 0 8px;
        color: #0f0f0f;
    }

    .modal-avatar.svelte-5r0ao9 {
        width: 128px;
        height: 128px;
        border-radius: 50%;
        margin-bottom: 10px;
    }

    .setting-item.svelte-5r0ao9 {
        margin: 10px 0;
    }

    .close-button.svelte-5r0ao9 {
        margin-top: 10px;
        padding: 5px 10px;
        width: 100%;
        height: 48px;
        background-color: var(--mac-primary);
        color: white;
        border: none;
        border-radius: 5px;
        cursor: pointer;
        font-size: 16px;
    }

    .modal-overlay.svelte-l51iw8 {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.2);
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 1000;
    }

    .modal-content.svelte-l51iw8 {
        background-color: white;
        padding: 20px;
        border-radius: 10px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        text-align: center;
        width: 480px;
        min-width: 320px;
    }

    .title_bar.svelte-l51iw8 {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        margin-bottom: 15px;
    }

    .close-x-btn.svelte-l51iw8 {
        border: none;
        background: transparent;
        width: 32px;
        height: 32px;
        cursor: pointer;
        padding: 0 8px;
        color: #0f0f0f;
    }

    p.svelte-l51iw8 {
        display: flex;
        margin: 10px 0;
        padding: 10px;
        height: 45px;
        text-align: left;
        border-radius: 5px;
        background: #f0f0f0;
        border: 1px solid #f1f1f1;
    }
    p.svelte-l51iw8 em:where(.svelte-l51iw8) {
        flex: 2;
        text-align: right;
    }

    .modal-avatar.svelte-l51iw8 {
        width: 128px;
        height: 128px;
        border-radius: 50%;
        margin-bottom: 10px;
    }

    .close-button.svelte-l51iw8 {
        margin-top: 10px;
        padding: 5px 10px;
        width: 100%;
        background-color: var(--mac-primary);
        color: white;
        height: 45px;
        border: none;
        border-radius: 5px;
        cursor: pointer;
    }

    .chat-bubble-container.svelte-19rocjh {
        display: flex;
        align-items: flex-end;
        margin-bottom: 10px;
    }

    .chat-bubble-container.sent.svelte-19rocjh {
        justify-content: flex-end;
    }

    .chat-bubble-container.received.svelte-19rocjh {
        justify-content: flex-start;
    }

    .avatar.svelte-19rocjh {
        width: 48px;
        height: 48px;
        border-radius: 50%;
        margin: 0 10px;
        cursor: pointer;
    }

    .chat-bubble.svelte-19rocjh {
        max-width: 70%;
        padding: 10px;
        border-radius: 10px;
        position: relative;
        min-height: 48px;
    }

    .bubble.svelte-19rocjh {
        min-height: 48px;
        padding: 10px 15px;
        border-radius: 10px;
    }

    .sent.svelte-19rocjh {
        color: white;
    }

    .sent.svelte-19rocjh .bubble:where(.svelte-19rocjh) {
        background-color: var(--mac-primary);
    }

    .received.svelte-19rocjh {
        color: var(--text-primary);
    }

    .received.svelte-19rocjh .bubble:where(.svelte-19rocjh) {
        background-color: #f0f0f0;
    }

    .timestamp.svelte-19rocjh {
        font-size: 12px;
        color: var(--mac-secondary);
        position: absolute;
        bottom: -15px;
    }

    .sent.svelte-19rocjh .timestamp:where(.svelte-19rocjh) {
        right: 0;
    }

    .received.svelte-19rocjh .timestamp:where(.svelte-19rocjh) {
        left: 0;
    }

    :root {
        --mac-bg: #f5f5f5;
        --mac-text: #333;
        --mac-primary: #007aff;
        --mac-secondary: #8e8e93;
        --mac-gray_border: rgba(138, 138, 138, 0.18); /* 浅灰色边框 */
    }

    .im.svelte-igtj8v {
        display: block;
        width: 100%;
        margin-top: 55px;
        margin-bottom: 55px;
    }

    .app.svelte-igtj8v {
        display: flex;
        flex: 1;
        height: 100%;
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
        background-color: var(--mac-bg);
        color: var(--mac-text);
    }

    .sidebar.svelte-igtj8v {
        width: 300px;
        border-right: 1px solid var(--mac-gray_border);
        overflow-y: auto;
    }

    .chat-area.svelte-igtj8v {
        flex: 1;
        display: flex;
        flex-direction: column;
    }

    .chat-header.svelte-igtj8v {
        display: flex;
        align-items: center;
        padding: 10px;
        border-bottom: 1px solid var(--mac-secondary);
    }

    .avatar.svelte-igtj8v {
        width: 48px;
        height: 48px;
        border-radius: 5px;
        margin-right: 10px;
        cursor: pointer;
    }

    .chat-messages.svelte-igtj8v {
        flex: 1;
        overflow-y: auto;
        padding: 10px;
        scroll-behavior: smooth;
    }

    .chat-input-area.svelte-igtj8v {
        display: flex;
        flex-direction: column;
    }

    .chat-buttons.svelte-igtj8v {
        display: flex;
        justify-content: space-around;
        padding: 10px;
        border-top: 1px solid var(--mac-secondary);
    }

    .chat-buttons.svelte-igtj8v button:where(.svelte-igtj8v) {
        padding: 5px;
        background-color: var(--mac-primary);
        color: white;
        border: none;
        border-radius: 5px;
        cursor: pointer;
        margin: 0 5px;
        font-size: 14px;
    }

    .chat-input.svelte-igtj8v {
        display: flex;
        padding: 10px;
        border-top: 1px solid var(--mac-secondary);
    }

    .chat-input.svelte-igtj8v input:where(.svelte-igtj8v) {
        flex: 1;
        padding: 10px;
        height: 50px;
        border: 1px solid var(--mac-secondary);
        border-radius: 5px;
        margin-right: 10px;
    }

    .chat-input.svelte-igtj8v button:where(.svelte-igtj8v) {
        padding: 5px 10px;
        background-color: var(--mac-primary);
        color: white;
        border: none;
        border-radius: 5px;
        cursor: pointer;
    }
