.conversation-item{display:flex;gap:12px;padding:12px;border-radius:8px;cursor:pointer;transition:background .2s;margin-bottom:4px}.conversation-item:hover{background:#f3f4f6}.conversation-item.unread{background:#eff6ff}.conversation-item.unread:hover{background:#dbeafe}.conversation-avatar{position:relative;width:48px;height:48px;flex-shrink:0}.conversation-avatar img{width:48px;height:48px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid #e5e7eb}.conversation-online-dot{position:absolute;bottom:2px;right:2px;width:12px;height:12px;background:#22c55e;border-radius:50%;border:2px solid white}.conversation-details{flex:1;min-width:0}.conversation-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.conversation-title{margin:0;font-size:14px;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-time{font-size:12px;color:#6b7280;flex-shrink:0;margin-left:8px}.conversation-preview{display:flex;justify-content:space-between;align-items:center;gap:8px}.conversation-message{margin:0;font-size:13px;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.conversation-item.unread .conversation-message{color:#374151;font-weight:500}.conversation-badge{background:#3b82f6;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center;flex-shrink:0}@media(prefers-color-scheme:dark){.conversation-item:hover{background:#374151}.conversation-item.unread{background:#1e3a5f}.conversation-item.unread:hover{background:#1e40af}.conversation-title{color:#e5e7eb}.conversation-message{color:#9ca3af}.conversation-item.unread .conversation-message{color:#e5e7eb}}.conversation-list{flex:1;overflow-y:auto;padding:8px}.conversation-list-loading,.conversation-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:40px 20px;text-align:center;color:#6b7280}.conversation-list-empty svg{color:#9ca3af;margin-bottom:16px}.conversation-list-empty h4{margin:0 0 8px;font-size:16px;color:#374151}.conversation-list-empty p{margin:0;font-size:14px;color:#6b7280}.spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-color-scheme:dark){.conversation-list-loading,.conversation-list-empty{color:#9ca3af}.conversation-list-empty h4{color:#e5e7eb}.conversation-list-empty p{color:#9ca3af}.spinner{border-color:#374151;border-top-color:#667eea}}.message-item{display:flex;margin-bottom:12px;padding:0 16px}.message-item.owner{justify-content:flex-end}.message-item.participator{justify-content:flex-start}.message-bubble{max-width:80%;padding:10px 14px;border-radius:16px;position:relative;word-break:break-word;box-shadow:0 1px 2px #0000000d}.message-item.owner .message-bubble{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff!important;border-bottom-right-radius:4px}.message-item.owner .message-text{color:#fff!important}.message-item.participator .message-bubble{background:#374151;color:#fff!important;border-bottom-left-radius:4px}.message-text{margin:0;font-size:14px;line-height:1.5;color:inherit}.message-item.owner .message-text,.message-item.participator .message-text{color:#fff!important}.system-message{display:flex;justify-content:center;margin:16px 0}.system-message span{background:#f3f4f6;color:#6b7280;font-size:12px;padding:4px 12px;border-radius:12px;font-weight:500}.message-image-container{margin:-6px -10px 8px}.message-image{max-width:100%;border-radius:12px;cursor:pointer;transition:transform .2s}.message-image:hover{transform:scale(1.02)}.message-file{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff3;border-radius:12px;margin-bottom:6px;text-decoration:none;color:inherit;transition:background .2s}.message-item.participator .message-file{background:#ffffff1a;border:1px solid rgba(255,255,255,.2)}.message-file:hover{background:#ffffff4d}.message-item.participator .message-file:hover{border-color:#ffffff4d;background:#ffffff26}.file-details{flex:1;overflow:hidden;display:flex;flex-direction:column}.file-name{font-weight:500;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit}.message-item.owner .file-name{color:#fff!important}.file-size{font-size:11px;opacity:.8;color:inherit}.message-item.owner .file-size{color:#fff!important}.message-meta{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:4px;font-size:11px}.message-time{opacity:.8;color:inherit}.message-item.owner .message-time{color:#fff!important}.message-item.participator .message-time{color:#d1d5db!important}.status-icon{opacity:.9}.status-icon.sent{color:#ffffffb3}.status-icon.read{color:#22c55e}.status-seen{display:inline-flex;align-items:center;gap:2px}.message-item.participator .status-icon.read{color:#16a34a}.status-error{color:#ef4444;font-weight:700;font-size:12px}@media(prefers-color-scheme:dark){.message-item.participator .message-bubble{background:#374151;color:#e5e7eb}.system-message span{background:#374151;color:#9ca3af}.message-item.participator .message-file{background:#4b5563;border-color:#6b7280}}.message-list{flex:1;overflow-y:auto;padding:16px 0;display:flex;flex-direction:column}.message-list-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:14px}.message-list::-webkit-scrollbar{width:6px}.message-list::-webkit-scrollbar-track{background:transparent}.message-list::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:3px}.message-list::-webkit-scrollbar-thumb:hover{background:#d1d5db}.typing-indicator{padding:8px 16px;display:flex;align-items:center;gap:8px;color:#6b7280;font-size:12px}.typing-bubbles{display:flex;gap:2px;background:#f3f4f6;padding:8px 12px;border-radius:12px 12px 12px 4px}.typing-bubbles span{width:4px;height:4px;background:#9ca3af;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.typing-bubbles span:nth-child(1){animation-delay:-.32s}.typing-bubbles span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@media(prefers-color-scheme:dark){.message-list::-webkit-scrollbar-thumb{background:#4b5563}.message-list::-webkit-scrollbar-thumb:hover{background:#6b7280}.typing-bubbles{background:#374151}.typing-text{color:#9ca3af}}.message-input-container{padding:12px;background:#fff;border-top:1px solid #e5e7eb}.input-row{display:flex;align-items:center;gap:8px}.message-input{flex:1;padding:10px 16px;border:1px solid #e5e7eb;border-radius:20px;font-size:14px;outline:none;transition:all .2s;background:#f9fafb!important;color:#1f2937!important;-webkit-text-fill-color:#1f2937!important}.message-input::-moz-placeholder{color:#9ca3af!important;-webkit-text-fill-color:#9ca3af!important}.message-input::placeholder{color:#9ca3af!important;-webkit-text-fill-color:#9ca3af!important}.message-input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;color:#1f2937!important;-webkit-text-fill-color:#1f2937!important}.attach-button,.send-button{width:40px;height:40px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.attach-button{background:#f3f4f6;color:#6b7280}.attach-button:hover{background:#e5e7eb;color:#374151}.send-button{background:#667eea;color:#fff}.send-button:hover:not(:disabled){background:#5a67d8;transform:scale(1.05)}.send-button:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.file-preview{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f3f4f6;border-radius:8px;margin-bottom:8px;font-size:13px}.file-info{display:flex;align-items:center;gap:8px;color:#4b5563}.file-name{font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{color:#9ca3af;font-size:12px}.remove-file{background:none;border:none;color:#9ca3af;cursor:pointer;padding:4px;border-radius:50%}.remove-file:hover{background:#e5e7eb;color:#ef4444}@media(prefers-color-scheme:dark){.message-input-container{background:#1f2937;border-color:#374151}.message-input{background:#374151;border-color:#4b5563;color:#fff}.message-input:focus{border-color:#667eea}.attach-button{background:#374151;color:#9ca3af}.attach-button:hover{background:#4b5563;color:#fff}.file-preview{background:#374151}.file-info{color:#e5e7eb}.send-button:disabled{background:#374151;color:#4b5563}}.chat-view{display:flex;flex-direction:column;height:100%;background:#fff}@media(prefers-color-scheme:dark){.chat-view{background:#1f2937}}.chat-window{position:fixed;bottom:100px;right:24px;width:400px;height:600px;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;display:flex;flex-direction:column;z-index:999;overflow:hidden;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-window-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px 16px 0 0;min-height:60px}.chat-window-title{flex:1;min-width:0}.chat-window-title h3{margin:0;font-size:18px;font-weight:600}.chat-header-user{display:flex;align-items:center;gap:10px}.back-button{background:#ffffff26;border:none;color:#fff;width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0}.back-button:hover{background:#ffffff40}.chat-user-info{display:flex;align-items:center;gap:10px;min-width:0}.chat-user-avatar{position:relative;flex-shrink:0}.chat-user-avatar img{width:40px;height:40px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid rgba(255,255,255,.3)}.online-indicator{position:absolute;bottom:0;right:0;width:12px;height:12px;background:#22c55e;border-radius:50%;border:2px solid white}.chat-user-details{display:flex;flex-direction:column;min-width:0}.chat-user-name{font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-user-role{font-size:11px;padding:2px 8px;border-radius:10px;background:#fff3;display:inline-block;width:-moz-fit-content;width:fit-content;margin-top:2px}.chat-user-role.role-admin{background:#ef44444d}.chat-user-role.role-support{background:#9333ea66}.chat-user-role.role-employer{background:#3b82f64d}.chat-user-role.role-jobseeker,.chat-user-role.role-seeker{background:#22c55e4d}.chat-title-text{font-weight:600;font-size:15px}.chat-window-actions{display:flex;gap:8px;flex-shrink:0}.new-chat-button,.close-button{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.new-chat-button:hover,.close-button:hover{background:#ffffff4d}.new-chat-button:disabled{opacity:.5;cursor:not-allowed}.chat-window-content{flex:1;overflow:hidden;display:flex;flex-direction:column}@media(prefers-color-scheme:dark){.chat-window{background:#1f2937;box-shadow:0 10px 40px #0000004d}}@media(max-width:768px){.chat-window{width:100%;height:100%;bottom:0;right:0;border-radius:0}.chat-window-header{border-radius:0;padding:12px}.chat-user-avatar img{width:36px;height:36px}.chat-user-name{font-size:14px}}.chat-button-container{position:fixed;bottom:24px;right:24px;z-index:1000}.chat-button{position:relative;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;box-shadow:0 4px 12px #667eea66;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.chat-button:hover{transform:scale(1.1);box-shadow:0 6px 20px #667eea99}.chat-button:active{transform:scale(.95)}.chat-button-badge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;border-radius:12px;min-width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;padding:0 6px;box-shadow:0 2px 8px #ef444466;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@media(max-width:768px){.chat-button-container{bottom:16px;right:16px}.chat-button{width:56px;height:56px}}@media print{.chat-button-container{display:none!important}}
