.confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease-out}.confirm-modal{background:var(--theme-card);border-radius:20px;width:90%;max-width:450px;box-shadow:0 10px 40px #0003;animation:slideUp .3s ease-out;border:1px solid var(--theme-border);overflow:hidden}.confirm-header{padding:24px 30px;border-bottom:1px solid var(--theme-border);background:var(--theme-primary);color:#fff}.confirm-header h3{margin:0;font-size:20px;font-weight:600}.confirm-body{padding:30px}.confirm-body p{margin:0;font-size:16px;color:var(--theme-text);line-height:1.6}.confirm-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 30px;border-top:1px solid var(--theme-border);background:var(--theme-card)}.btn-confirm-cancel,.btn-confirm-ok{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s}.btn-confirm-cancel{background:var(--theme-border, #f0f0f0);color:var(--theme-text, #333);border:2px solid var(--theme-border, #e0e0e0)}.btn-confirm-cancel:hover{background:var(--theme-border, #e0e0e0);border-color:var(--theme-border, #d0d0d0);transform:translateY(-1px)}.btn-confirm-ok{background:var(--theme-primary);color:#fff}.btn-confirm-ok:hover{background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-confirm-ok.btn-danger{background:#ef4444;color:#fff}.btn-confirm-ok.btn-danger:hover{background:#dc2626;color:#fff;box-shadow:0 4px 12px #ef44444d}.message{display:flex;margin-bottom:10px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-own{justify-content:flex-end}.message-other{justify-content:flex-start}.message-content{max-width:70%;display:flex;flex-direction:column;word-break:break-word;overflow-wrap:break-word}@media (max-width: 1366px){.message-content{max-width:75%}}@media (max-width: 1199px){.message-content{max-width:80%}}@media (max-width: 768px){.message-content{max-width:85%}}.message-sender{font-size:12px;color:#666;margin-bottom:5px;padding:0 10px}.message-bubble{padding:12px 16px;border-radius:18px;position:relative;word-wrap:break-word}.message-own .message-bubble{background:var(--theme-primary);color:#fff;border-bottom-right-radius:4px}.message-other .message-bubble{background:var(--theme-border);color:var(--theme-text);border-bottom-left-radius:4px}.message-text{font-size:15px;line-height:1.5;white-space:pre-wrap}.message-time{font-size:11px;opacity:.7;margin-top:5px;text-align:right;display:flex;align-items:center;justify-content:flex-end;gap:5px}.message-status-indicator{margin-left:6px;color:#ffffffe6;font-size:12px;display:inline-flex;align-items:center}.message-status-indicator i{color:#ffffffe6}.message-read-indicator{color:#10b981;font-size:12px}.message-system{text-align:center;margin:15px 0}.message-system span{display:inline-block;padding:8px 16px;background:#0000000d;border-radius:12px;color:#666;font-size:13px}.file-preview{display:flex;align-items:center;gap:10px;padding:10px;background:#fff3;border-radius:10px;margin:-5px 0}.file-icon{font-size:24px}.file-info{flex:1;min-width:0}.file-name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-size{font-size:12px;opacity:.8;margin-top:2px}.file-image{max-width:300px;max-height:300px;border-radius:10px;object-fit:contain}@media (max-width: 1366px){.file-image{max-width:250px;max-height:250px}}@media (max-width: 1199px){.file-image{max-width:220px;max-height:220px}}@media (max-width: 768px){.file-image{max-width:200px;max-height:200px}}.download-btn{background:#ffffff4d;border:none;padding:5px 10px;border-radius:5px;cursor:pointer;font-size:12px;transition:background .2s}.download-btn:hover{background:#ffffff80}.message-other .file-preview{background:#0000000d}.message-other .download-btn{background:#0000001a}.message-other .download-btn:hover{background:#0003}.message-actions{display:flex;gap:5px;margin-top:5px;margin-bottom:5px;animation:fadeInActions .2s ease-out}@keyframes fadeInActions{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.btn-message-action{background:#fff3;border:none;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:12px;transition:all .2s;display:flex;align-items:center;justify-content:center;color:#fff}.btn-message-action:hover{background:#ffffff4d;transform:scale(1.1)}.message-other .btn-message-action{background:#0000001a;color:#333}.message-other .btn-message-action:hover{background:#0003}.message-edited-badge{font-size:11px;opacity:.7;font-style:italic;margin-left:5px}.message-edit-form{display:flex;flex-direction:column;gap:8px}.message-edit-input{width:100%;min-height:60px;padding:8px;border:2px solid rgba(255,255,255,.3);border-radius:8px;background:#ffffff1a;color:#fff;font-size:15px;font-family:inherit;resize:vertical}.message-other .message-edit-input{background:#ffffffe6;color:#333;border-color:#0003}.message-edit-input:focus{outline:none;border-color:#ffffff80;background:#ffffff26}.message-other .message-edit-input:focus{border-color:#667eea;background:#fff}.message-edit-actions{display:flex;gap:8px;justify-content:flex-end}.btn-edit-save,.btn-edit-cancel{padding:6px 12px;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:5px}.btn-edit-save{background:#ffffff4d;color:#fff}.btn-edit-save:hover{background:#fff6}.btn-edit-cancel{background:#fff3;color:#fff}.btn-edit-cancel:hover{background:#ffffff4d}.message-other .btn-edit-save{background:#10b981;color:#fff}.message-other .btn-edit-save:hover{background:#059669}.message-other .btn-edit-cancel{background:#ef4444;color:#fff}.message-other .btn-edit-cancel:hover{background:#dc2626}.message-reply-preview{display:flex;gap:8px;padding:8px;margin-bottom:8px;background:#0000001a;border-radius:8px;border-left:3px solid rgba(255,255,255,.5)}.message-other .message-reply-preview{background:#667eea1a;border-left-color:#667eea}.reply-indicator{width:3px;background:#ffffff80;border-radius:2px}.message-other .reply-indicator{background:#667eea}.reply-content{flex:1;min-width:0}.reply-sender{font-size:11px;font-weight:600;color:#fffc;margin-bottom:2px}.message-other .reply-sender{color:#667eea}.reply-text{font-size:12px;color:#ffffffb3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-other .reply-text{color:#666}.btn-reply{background:#667eea33;color:#667eea}.btn-reply:hover{background:#667eea4d}.message-own .btn-reply{background:#fff3;color:#fff}.message-own .btn-reply:hover{background:#ffffff4d}.reaction-picker{position:absolute;bottom:100%;left:0;background:#fff;border-radius:12px;padding:8px;display:flex;gap:4px;box-shadow:0 4px 12px #00000026;z-index:10;margin-bottom:5px}.message-own .reaction-picker{left:auto;right:0}.reaction-emoji{background:none;border:none;font-size:24px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .2s}.reaction-emoji:hover{background:#667eea1a;transform:scale(1.2)}.message-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.reaction-badge{background:#0000001a;border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:2px 8px;font-size:13px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:4px;color:#fff}.message-other .reaction-badge{background:#667eea1a;border-color:#667eea4d;color:#333}.reaction-badge:hover{transform:scale(1.1);background:#00000026}.message-other .reaction-badge:hover{background:#667eea33}.reaction-badge.reacted{background:#667eea4d;border-color:#667eea;font-weight:600}.message-own .reaction-badge.reacted{background:#ffffff4d;border-color:#fff}.btn-react{background:#667eea33;color:#667eea}.btn-react:hover{background:#667eea4d}.message-own .btn-react{background:#fff3;color:#fff}.message-own .btn-react:hover{background:#ffffff4d}.btn-block{background:#ef444433;color:#ef4444}.btn-block:hover{background:#ef44444d}.message-own .btn-block{background:#fff3;color:#fff}.message-own .btn-block:hover{background:#ffffff4d}.media-viewer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:5000;display:flex;align-items:center;justify-content:center}.media-viewer{width:min(90vw,1000px);height:min(85vh,800px);background:var(--theme-card,#111827);border:1px solid var(--theme-border,#374151);border-radius:16px;box-shadow:0 20px 60px #0006;display:flex;flex-direction:column;overflow:hidden}.media-viewer-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--theme-primary,#6366f1);color:#fff}.media-title{display:flex;align-items:center;gap:10px;min-width:0}.media-title span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.media-size{opacity:.8;font-size:12px}.media-actions{display:flex;gap:8px}.btn-download,.btn-close{background:#fff3;border:none;color:#fff;width:36px;height:36px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s}.btn-download:hover,.btn-close:hover{background:#ffffff4d;transform:scale(1.05)}.media-viewer-body{flex:1;background:#000;display:flex;align-items:center;justify-content:center}.media-image{max-width:100%;max-height:100%;object-fit:contain}.media-video{width:100%;height:100%;object-fit:contain;background:#000}.media-generic{display:flex;align-items:center;gap:16px;color:#fff}.media-generic-info{display:flex;flex-direction:column;gap:8px}.btn-download-large{background:var(--theme-primary,#6366f1);border:none;color:#fff;padding:8px 12px;border-radius:8px;cursor:pointer;box-shadow:0 6px 20px #6366f14d}.message-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px;background:#f8f9fa;display:flex;flex-direction:column;gap:15px;max-width:100%;box-sizing:border-box}@media (max-width: 1366px){.message-list{padding:15px}}@media (max-width: 1199px){.message-list{padding:12px}}.empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:#999;font-size:16px}.emoji-picker-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-out}.emoji-picker{background:var(--theme-card);border-radius:16px;box-shadow:0 10px 40px #00000026;width:90%;max-width:400px;max-height:500px;border:1px solid var(--theme-border);animation:slideUp .2s ease-out}.emoji-picker-header{display:flex;justify-content:space-between;align-items:center;padding:15px;border-bottom:1px solid var(--theme-border)}.emoji-categories{display:flex;gap:8px;flex-wrap:wrap}.emoji-category-btn{padding:6px 12px;border:1px solid var(--theme-border);background:transparent;border-radius:8px;font-size:12px;cursor:pointer;transition:all .2s;color:var(--theme-text)}.emoji-category-btn:hover{background:var(--theme-border)}.emoji-category-btn.active{background:var(--theme-primary);color:#fff;border-color:var(--theme-primary)}.emoji-picker-close{background:none;border:none;font-size:20px;cursor:pointer;color:var(--theme-text);opacity:.7;transition:opacity .2s}.emoji-picker-close:hover{opacity:1}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;padding:15px;max-height:400px;overflow-y:auto}.emoji-item{background:transparent;border:none;font-size:24px;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s;display:flex;align-items:center;justify-content:center}.emoji-item:hover{background:var(--theme-border);transform:scale(1.2)}.message-input-container{padding:20px;background:var(--theme-card);border-top:1px solid var(--theme-border);box-sizing:border-box;max-width:100%}@media (max-width: 1366px){.message-input-container{padding:15px}}@media (max-width: 1199px){.message-input-container{padding:12px}}.message-input-form{display:flex;align-items:flex-end;gap:10px}.btn-emoji,.btn-attach{background:var(--theme-border);border:none;width:40px;height:40px;border-radius:50%;font-size:20px;cursor:pointer;transition:all .3s;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--theme-text)}.btn-emoji:hover:not(:disabled),.btn-attach:hover:not(:disabled){background:var(--theme-secondary);color:#fff;transform:scale(1.1)}.btn-attach:disabled,.btn-emoji:disabled{opacity:.5;cursor:not-allowed}.btn-attach:disabled{opacity:.5;cursor:not-allowed}.file-input-hidden{display:none}.message-textarea{flex:1;padding:12px 16px;border:2px solid #e0e0e0;border-radius:20px;font-size:15px;font-family:inherit;resize:none;max-height:120px;overflow-y:auto;transition:border-color .3s}.message-textarea:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px #3b82f61a}.message-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.message-textarea::placeholder{color:#999}.btn-send{background:var(--theme-primary);border:none;width:40px;height:40px;border-radius:50%;color:#fff;font-size:18px;cursor:pointer;transition:all .3s;flex-shrink:0;display:flex;align-items:center;justify-content:center}.btn-send:hover:not(:disabled){background:var(--theme-secondary);transform:scale(1.1);box-shadow:0 5px 15px #00000026}.btn-send:disabled{opacity:.5;cursor:not-allowed}.input-hint{margin-top:10px;font-size:12px;color:#999;text-align:center}.reply-preview{display:flex;align-items:center;gap:10px;padding:10px 15px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-left:3px solid var(--theme-primary);border-radius:8px;margin-bottom:10px}.reply-preview-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.reply-label{font-size:12px;color:var(--theme-primary);font-weight:600}.reply-label i{margin-right:4px}.reply-message-preview{font-size:13px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-cancel-reply{background:transparent;border:none;width:28px;height:28px;border-radius:50%;color:#999;font-size:14px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-cancel-reply:hover{background:#ef44441a;color:#ef4444}.video-call-container{position:relative;background:#1a1a1a;border-bottom:1px solid rgba(255,255,255,.1);min-height:400px;max-height:600px;overflow:hidden;transition:all .3s ease;z-index:10}@media (max-width: 1366px){.video-call-container{min-height:360px;max-height:550px}}@media (max-width: 1199px){.video-call-container{min-height:340px;max-height:500px}}.video-call-container.minimized{min-height:200px;max-height:250px}.video-call-wrapper{position:relative;width:100%;height:100%;min-height:400px;display:flex;align-items:center;justify-content:center;overflow:hidden}.video-remote-container{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#0f0f0f}.video-remote{width:100%;height:100%;object-fit:cover;background:#000}.video-local-container{position:absolute;bottom:100px;right:20px;width:200px;height:150px;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #00000080;border:2px solid rgba(255,255,255,.15);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;transition:all .3s cubic-bezier(.4,0,.2,1)}@media (max-width: 1366px){.video-local-container{width:180px;height:135px;bottom:90px;right:16px}}@media (max-width: 1199px){.video-local-container{width:160px;height:120px;bottom:85px;right:14px}}.video-local-container:hover{transform:scale(1.05);border-color:var(--theme-primary);box-shadow:0 6px 24px #0009}.video-local{width:100%;height:100%;object-fit:cover;background:#000}.video-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#2a2a2a;color:#fff;position:relative}.video-placeholder.remote{background:#1a1a1a}.video-placeholder.local{background:#333;border-radius:12px}.user-avatar-large{width:150px;height:150px;border-radius:50%;background:var(--theme-primary, #6366f1);display:flex;align-items:center;justify-content:center;font-size:64px;font-weight:700;color:#fff;box-shadow:0 8px 24px #0000004d;margin-bottom:20px;animation:pulse-avatar 2s ease-in-out infinite}@keyframes pulse-avatar{0%,to{transform:scale(1);box-shadow:0 8px 24px #0000004d}50%{transform:scale(1.03);box-shadow:0 12px 32px #6366f166}}.user-avatar-small{width:100%;height:100%;border-radius:12px;background:var(--theme-primary, #6366f1);display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;color:#fff;position:relative}.user-name-display{font-size:24px;font-weight:600;color:#ffffffe6;margin-top:10px}.connection-status-indicator{display:flex;align-items:center;gap:8px;margin-top:20px;color:#ffffffb3;font-size:14px}.connection-status-indicator.connected{color:#10b981}.pulse-dot{width:8px;height:8px;border-radius:50%;background:#fbbf24;animation:pulse-dot 1.5s ease-in-out infinite}.pulse-dot.active{background:#10b981;animation:pulse-active 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}@keyframes pulse-active{0%,to{opacity:1;box-shadow:0 0 #10b98180}50%{opacity:.8;box-shadow:0 0 0 8px #10b98100}}.call-info-overlay{position:absolute;top:20px;left:20px;display:flex;flex-direction:column;gap:10px;z-index:15}.call-duration{background:#000000b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;padding:8px 16px;border-radius:8px;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;border:1px solid rgba(255,255,255,.1)}.call-type-badge{background:var(--theme-primary, #6366f1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;padding:6px 14px;border-radius:8px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.2)}.remote-user-status{position:absolute;top:20px;right:20px;display:flex;gap:10px;z-index:15}.status-indicator{width:40px;height:40px;border-radius:50%;background:#000000b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.1)}.status-indicator:hover{transform:scale(1.1)}.status-indicator.active{background:#10b981;border-color:#fff3}.status-indicator.muted{background:#ef4444;border-color:#fff3}.video-off-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000b3;color:#fff;padding:8px;border-radius:8px;font-size:20px}.audio-call-indicator{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--theme-primary, #6366f1);color:#fff;position:relative;overflow:hidden}.audio-call-avatar{position:relative;z-index:1;margin-bottom:30px}.avatar-circle{width:180px;height:180px;border-radius:50%;background:#ffffff26;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;font-size:72px;font-weight:700;color:#fff;box-shadow:0 12px 40px #0000004d;border:3px solid rgba(255,255,255,.3);animation:pulse-avatar 2s ease-in-out infinite;transition:all .3s cubic-bezier(.4,0,.2,1)}.avatar-circle:hover{transform:scale(1.05);border-color:#ffffff80}.audio-waves{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;gap:4px;align-items:center;z-index:-1}.audio-waves span{width:4px;height:40px;background:#fff9;border-radius:2px;animation:wave 1.4s ease-in-out infinite}.audio-waves span:nth-child(2){animation-delay:.2s;height:60px}.audio-waves span:nth-child(3){animation-delay:.4s}@keyframes wave{0%,to{transform:scaleY(.5);opacity:.5}50%{transform:scaleY(1);opacity:1}}.audio-call-info{position:relative;z-index:1;text-align:center}.audio-call-info h3{font-size:28px;font-weight:700;margin:0 0 10px;text-shadow:0 2px 10px rgba(0,0,0,.3)}.audio-call-info p{font-size:18px;font-weight:500;opacity:.9;font-variant-numeric:tabular-nums}.video-call-controls{position:absolute;bottom:30px;left:50%;transform:translate(-50%);display:flex;gap:12px;align-items:center;z-index:20;background:#0009;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:12px 20px;border-radius:16px;box-shadow:0 8px 32px #0006;border:1px solid rgba(255,255,255,.1)}@media (max-width: 1366px){.video-call-controls{gap:10px;padding:10px 16px;bottom:24px}}@media (max-width: 1199px){.video-call-controls{gap:8px;padding:8px 14px;bottom:20px}}.control-btn{width:52px;height:52px;border-radius:50%;border:none;font-size:20px;cursor:pointer;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;position:relative;overflow:visible;border:2px solid transparent}@media (max-width: 1366px){.control-btn{width:48px;height:48px;font-size:18px}.control-btn.end-call{width:56px;height:56px;font-size:22px}}@media (max-width: 1199px){.control-btn{width:44px;height:44px;font-size:16px}.control-btn.end-call{width:52px;height:52px;font-size:20px}}.control-btn:hover{transform:translateY(-3px);background:#fff3;border-color:#ffffff4d;box-shadow:0 6px 20px #0000004d}.control-btn:active{transform:translateY(-1px);box-shadow:0 2px 10px #0003}.control-btn.active{background:#10b981;color:#fff;border-color:#fff3}.control-btn.active:hover{background:#059669;box-shadow:0 6px 20px #10b98166}.control-btn.muted{background:#ef4444;color:#fff;border-color:#fff3}.control-btn.muted:hover{background:#dc2626;box-shadow:0 6px 20px #ef444466}.control-btn.minimize,.control-btn.device-settings{background:#ffffff1a}.control-btn.minimize:hover,.control-btn.device-settings:hover{background:#fff3}.control-btn.end-call{background:#ef4444;color:#fff;width:60px;height:60px;font-size:24px;border-color:#fff3}.control-btn.end-call:hover{background:#dc2626;transform:translateY(-3px) scale(1.05);box-shadow:0 8px 24px #ef444480}@media (max-width: 768px){.video-call-container{min-height:300px;max-height:400px}.video-local-container{width:120px;height:90px;bottom:80px;right:10px}.user-avatar-large{width:100px;height:100px;font-size:48px}.video-call-controls{gap:8px;padding:10px 14px}.control-btn{width:46px;height:46px;font-size:18px}.control-btn.end-call{width:54px;height:54px;font-size:20px}.call-info-overlay{top:10px;left:10px}.call-duration{font-size:14px;padding:6px 12px}.call-type-badge{font-size:11px;padding:4px 10px}}:root[data-theme=dark] .video-call-container{background:#1a1a1a}:root[data-theme=dark] .video-placeholder{background:#2a2a2a}.connection-status{display:flex;align-items:center;gap:8px;font-size:13px;opacity:.9}.status-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}.connection-status.connected .status-dot{background:#4ade80;box-shadow:0 0 10px #4ade8080}.connection-status.disconnected .status-dot{background:#fbbf24;box-shadow:0 0 10px #fbbf2480}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-text{font-weight:500}.add-coowner-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:1600;animation:fadeIn .3s ease-out}.add-coowner-modal{background:var(--theme-card);border-radius:20px;width:90%;max-width:400px;box-shadow:0 10px 40px #00000026;border:1px solid var(--theme-border);animation:slideUp .3s ease-out}.add-coowner-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;border-bottom:1px solid var(--theme-border);background:var(--theme-primary);color:#fff;border-radius:20px 20px 0 0}.add-coowner-header h2{margin:0;font-size:22px}.add-coowner-content{padding:30px}.add-coowner-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 30px;border-top:1px solid var(--theme-border)}.btn-add-coowner{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s;background:var(--theme-primary);color:#fff}.btn-add-coowner:hover:not(:disabled){background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.btn-add-coowner:disabled{opacity:.5;cursor:not-allowed}.room-control-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.room-control-modal{background:var(--theme-card);border-radius:16px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003;animation:slideUp .3s ease-out;border:none;display:flex;flex-direction:column}@media (max-width: 1366px){.room-control-modal{max-width:650px;max-height:85vh}}@media (max-width: 1199px){.room-control-modal{width:92%;max-width:600px;max-height:82vh}}@media (max-width: 1024px){.room-control-modal{width:95%;max-width:650px;max-height:85vh}}@media (max-width: 768px){.room-control-modal{width:95%;max-width:100%;max-height:90vh;border-radius:12px}}@media (max-width: 480px){.room-control-modal{width:100%;height:100%;max-height:100vh;border-radius:0}}.room-control-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--theme-border);background:var(--theme-primary);color:#fff;border-radius:16px 16px 0 0;position:sticky;top:0;z-index:10}.room-control-header h2{margin:0;font-size:24px}@media (max-width: 768px){.room-control-header h2{font-size:20px}}@media (max-width: 480px){.room-control-header h2{font-size:18px}}.room-control-content{padding:24px;flex:1;overflow-y:auto}@media (max-width: 768px){.room-control-content{padding:16px}}@media (max-width: 480px){.room-control-content{padding:12px}}.room-control-section{margin-bottom:28px;background:var(--theme-bg, #f8f9fa);padding:20px;border-radius:12px;border:1px solid var(--theme-border, #e9ecef)}@media (max-width: 768px){.room-control-section{margin-bottom:20px;padding:16px}}@media (max-width: 480px){.room-control-section{margin-bottom:16px;padding:12px}}.room-control-section:last-child{margin-bottom:0}.room-control-section h3{margin:0 0 16px;font-size:16px;color:var(--theme-text, #333);font-weight:600;display:flex;align-items:center;gap:8px}.room-control-section h4{margin:15px 0 10px;font-size:16px;color:var(--theme-text, #555);font-weight:600}.input-field{width:100%;padding:12px 16px;border:2px solid var(--theme-border, #e0e0e0);border-radius:10px;font-size:15px;transition:all .3s;font-family:inherit;background:var(--theme-card, white);color:var(--theme-text, #333)}.input-field:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px rgba(var(--theme-primary-rgb, 59, 130, 246),.1)}.room-id-container{display:flex;gap:10px;align-items:stretch}@media (max-width: 480px){.room-id-container{flex-direction:column}.btn-copy-room-id{width:100%;justify-content:center}}.btn-copy-room-id{padding:12px 20px;background:var(--theme-primary);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:8px;white-space:nowrap}.btn-copy-room-id:hover{background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-copy-room-id:active{transform:translateY(0)}.input-field:disabled{background:#f5f5f5;color:#666;cursor:not-allowed}.input-error{border-color:#ef4444}.field-hint{font-size:12px;color:#666;margin-top:4px}.toggle-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:15px;color:#555}.toggle-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--theme-primary)}.co-owner-add-group{display:flex;gap:10px}@media (max-width: 480px){.co-owner-add-group{flex-direction:column}.btn-add-coowner{width:100%;justify-content:center}}.co-owner-add-group .input-field{flex:1}.btn-add-coowner{padding:12px 20px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s;background:var(--theme-primary);color:#fff;display:flex;align-items:center;gap:8px}.btn-add-coowner:hover{background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.co-owners-list{margin-top:15px}.co-owner-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f5f5f5;border-radius:10px;margin-bottom:10px}.btn-remove-coowner{background:#ef4444;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center}.btn-remove-coowner:hover{background:#dc2626;transform:scale(1.1)}.room-control-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--theme-border);background:#f8f9fa;position:sticky;bottom:0;border-radius:0 0 16px 16px}.btn-cancel:hover{background:var(--theme-border, #e0e0e0);border-color:var(--theme-border, #d0d0d0);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.btn-save:hover:not(:disabled){background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.btn-save:disabled{opacity:.6;cursor:not-allowed}.error-message{padding:12px 16px;background:#fee;border:1px solid #fcc;border-radius:10px;color:#c33;margin-top:20px;display:flex;align-items:center;gap:8px}.room-control-loading,.room-control-error{padding:40px;text-align:center;font-size:18px;color:#666}@media (min-width: 2560px){.user-list{right:-13px;width:420px}}@media (min-width: 3440px) and (max-width: 3839px){.user-list{right:-18px;width:480px}}@media (min-width: 3840px){.user-list{right:-22px;width:540px}}.user-list{position:fixed;top:50%;right:20px;transform:translateY(-50%);width:300px;height:90vh;max-height:900px;background:var(--theme-card);display:flex;flex-direction:column;overflow:hidden;transition:background .3s,right .3s,width .3s,box-shadow .3s;border:1px solid var(--theme-border);border-radius:20px;box-shadow:0 12px 30px #0000001f;z-index:10}@media (min-width: 2560px){.user-list{right:calc((100vw - 1400px)/2 - 320px);width:320px;height:90vh}}@media (min-width: 2240px) and (max-width: 2559px){.user-list{right:calc((100vw - 1350px)/2 - 310px);width:310px;height:90vh}}@media (min-width: 2048px) and (max-width: 2239px){.user-list{right:calc((100vw - 1300px)/2 - 300px);width:300px;height:90vh}}@media (min-width: 1920px) and (max-width: 2047px){.user-list{right:calc((100vw - 1200px)/2 - 290px);width:290px;height:90vh}}@media (min-width: 1800px) and (max-width: 1919px){.user-list{right:calc((100vw - 1180px)/2 - 280px);width:280px;height:90vh}}@media (min-width: 1680px) and (max-width: 1799px){.user-list{right:calc((100vw - 1150px)/2 - 270px);width:270px;height:88vh}}@media (min-width: 1600px) and (max-width: 1679px){.user-list{right:calc((100vw - 1120px)/2 - 260px);width:260px;height:88vh}}@media (min-width: 1536px) and (max-width: 1599px){.user-list{right:calc((100vw - 1080px)/2 - 250px);width:250px;height:88vh}}@media (min-width: 1440px) and (max-width: 1535px){.user-list{right:8px;width:240px;height:88vh;max-height:850px}}@media (min-width: 1200px) and (max-width: 1279px){.user-list{right:12px;width:270px}}@media (min-width: 1024px) and (max-width: 1199px){.user-list{right:10px;width:260px}}@media (min-width: 1280px) and (max-width: 1365px){.user-list{right:14px;width:280px}}@media (min-width: 1366px) and (max-width: 1439px){.user-list{right:16px;width:290px}}@media (min-width: 1440px) and (max-width: 1535px){.user-list{right:18px;width:340px}}@media (min-width: 1536px) and (max-width: 1599px){.user-list{right:20px;width:355px}}@media (min-width: 1600px) and (max-width: 1679px){.user-list{right:22px;width:370px}}@media (min-width: 1680px) and (max-width: 1799px){.user-list{right:24px;width:385px}}@media (min-width: 1920px) and (max-width: 2047px){.user-list{right:26px;width:400px}}@media (min-width: 900px) and (max-width: 1023px){.user-list{right:10px;width:220px;height:82vh;max-height:none}}@media (min-width: 769px) and (max-width: 899px){.user-list{right:8px;width:200px;height:80vh;max-height:none}}@media (max-width: 768px){.user-list{width:85%;max-width:320px;height:100vh;max-height:none;top:0;right:0;transform:translate(100%);z-index:1001}.user-list.mobile-open{transform:translate(0)}}.user-list-header{padding:20px 18px;border-bottom:1px solid var(--theme-border);display:flex;justify-content:space-between;align-items:center;background:var(--theme-primary);color:#fff;-webkit-user-select:none;user-select:none;border-top-left-radius:16px;border-top-right-radius:16px;box-sizing:border-box}@media (max-width: 1024px){.user-list-header{padding:16px 12px}}.user-list-header:hover{background:var(--theme-primary)}.collapsed-icon-wrapper{display:flex;align-items:center;justify-content:center;width:100%;font-size:28px;color:#fff;transition:transform .3s}.collapsed-icon-wrapper:hover{transform:scale(1.1)}.collapsed-toggle{position:absolute;top:12px;left:50%;transform:translate(-50%);background:#ffffff40;border:none;color:#fff;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;padding:0;font-size:14px;z-index:2;box-shadow:0 2px 8px #00000026}.collapse-toggle,.collapsed-toggle{display:none!important}.user-list-content{flex:1;overflow-y:auto;padding:18px;transition:opacity .3s ease;scrollbar-width:thin;scrollbar-color:var(--theme-primary) transparent;background:var(--theme-card);box-sizing:border-box}@media (max-width: 1366px){.user-list-content{padding:14px}}@media (max-width: 1199px){.user-list-content{padding:12px}}.user-list-content::-webkit-scrollbar{width:6px}.user-list-content::-webkit-scrollbar-track{background:transparent}.user-list-content::-webkit-scrollbar-thumb{background:var(--theme-primary);border-radius:10px}.user-list-content::-webkit-scrollbar-thumb:hover{background:var(--theme-secondary)}.user-list.collapsed .user-list-content,.user-list-backdrop{display:none}@media (max-width: 768px){.user-list-backdrop{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999;opacity:0;visibility:hidden;transition:all .3s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.user-list-backdrop.active{opacity:1;visibility:visible}}.user-list-loading,.user-list-empty{padding:40px 20px;text-align:center;color:#999;font-size:14px}.user-section{margin-bottom:20px}.user-section:last-child{margin-bottom:0}.user-section-title{font-size:11px;font-weight:700;color:var(--theme-primary);margin-bottom:12px;padding:8px 12px;display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:1px;background:var(--theme-bg);border-radius:8px;border:1px solid var(--theme-border);border-left:3px solid var(--theme-primary)}.status-indicator{width:10px;height:10px;border-radius:50%;display:inline-block}.status-indicator.online{background:#10b981}.status-indicator.offline{background:#9ca3af}.user-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;margin-bottom:6px;transition:all .3s;position:relative;cursor:pointer;border:1px solid transparent}.user-item:hover{border-color:var(--theme-primary);box-shadow:0 4px 12px #0000001a}.user-avatar-small{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;flex-shrink:0;box-shadow:0 3px 10px #00000026;border:2px solid rgba(255,255,255,.9)}.user-info-small{flex:1;min-width:0}.user-name-small{font-size:15px;font-weight:600;color:var(--theme-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:8px;margin-bottom:4px}.user-badges-row{display:flex;gap:6px;flex-wrap:wrap}.user-badge{font-size:10px;padding:3px 8px;border-radius:6px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;box-shadow:0 2px 6px #00000026}.user-badge.owner{background:#fbbf24;color:#1f2937;display:flex;align-items:center;gap:4px}.user-badge.coowner{background:#7c3aed;color:#fff;display:flex;align-items:center;gap:4px}.user-badge.moderator{background:var(--theme-primary);color:#fff}.user-badge-you{font-size:10px;background:var(--theme-primary);color:#fff;padding:3px 8px;border-radius:6px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;box-shadow:0 2px 6px #667eea4d}.user-badge.guest{background:#9ca3af;color:#fff;display:flex;align-items:center;gap:4px}.status-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:2px solid white}.status-dot.online{background:#10b981}.status-dot.offline{background:#9ca3af}.collapse-toggle{background:#ffffff40;border:none;color:#fff;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;padding:0;font-size:16px;box-shadow:0 2px 8px #00000026}.collapse-toggle:hover{background:#fff6;transform:scale(1.15) rotate(180deg)}.collapse-toggle:active{transform:scale(.95)}.spam-protection-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3000;animation:fadeIn .3s ease-out}.spam-protection-modal{background:var(--theme-card);border-radius:24px;width:90%;max-width:450px;padding:40px 30px;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out;border:1px solid var(--theme-border);text-align:center}.spam-protection-icon{width:80px;height:80px;margin:0 auto 20px;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;color:#fff;box-shadow:0 8px 24px #ef44444d;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 8px 24px #ef44444d}50%{transform:scale(1.05);box-shadow:0 12px 32px #ef444480}}.spam-protection-modal h3{margin:0 0 12px;font-size:24px;font-weight:700;color:var(--theme-text, #333)}.spam-protection-modal p{margin:0 0 30px;font-size:16px;color:var(--theme-text, #666);line-height:1.6}.spam-timer{display:flex;flex-direction:column;align-items:center;gap:15px}.timer-circle{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--theme-primary, #6366f1) 0%,var(--theme-secondary, #818cf8) 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #6366f14d;position:relative}.timer-circle:before{content:"";position:absolute;width:100%;height:100%;border-radius:50%;border:4px solid rgba(255,255,255,.3);animation:rotate 2s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.timer-seconds{font-size:48px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;z-index:1}.timer-text{font-size:14px;color:var(--theme-text, #666);margin:0}:root[data-theme=dark] .spam-protection-modal{background:var(--theme-card, #1e293b);border-color:var(--theme-border, #334155)}:root[data-theme=dark] .spam-protection-modal h3{color:var(--theme-text, #f1f5f9)}:root[data-theme=dark] .spam-protection-modal p{color:var(--theme-text, #cbd5e1)}.media-device-selector-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:20000;animation:fadeIn .3s ease-out}.media-device-selector-modal{background:var(--theme-card, #ffffff);border-radius:20px;width:90%;max-width:500px;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out;border:1px solid var(--theme-border, #e0e0e0);overflow:hidden}.media-device-selector-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--theme-border, #e0e0e0);background:var(--theme-background, #f8f9fa)}.media-device-selector-header h3{margin:0;font-size:20px;font-weight:600;color:var(--theme-text, #333);display:flex;align-items:center;gap:10px}.media-device-selector-header .btn-close{background:none;border:none;font-size:20px;color:var(--theme-text, #666);cursor:pointer;padding:5px 10px;border-radius:5px;transition:all .2s}.media-device-selector-header .btn-close:hover{background:var(--theme-hover, #f0f0f0);color:var(--theme-text, #333)}.media-device-selector-content{padding:24px}.media-device-selector-loading{padding:40px;text-align:center;color:var(--theme-text, #666)}.device-selector-group{margin-bottom:24px}.device-selector-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--theme-text, #333);font-size:14px;display:flex;align-items:center;gap:8px}.device-selector-group label i{color:var(--theme-primary, #6366f1)}.device-select{width:100%;padding:12px 16px;border:2px solid var(--theme-border, #e0e0e0);border-radius:10px;font-size:15px;background:var(--theme-background, #ffffff);color:var(--theme-text, #333);cursor:pointer;transition:all .2s}.device-select:focus{outline:none;border-color:var(--theme-primary, #6366f1);box-shadow:0 0 0 3px #6366f11a}.device-selector-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid var(--theme-border, #e0e0e0)}.btn-refresh,.btn-save{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.btn-refresh{background:var(--theme-background, #f0f0f0);color:var(--theme-text, #666)}.btn-refresh:hover{background:var(--theme-hover, #e0e0e0)}.btn-save{background:linear-gradient(135deg,var(--theme-primary, #6366f1) 0%,var(--theme-secondary, #818cf8) 100%);color:#fff}.btn-save:hover{transform:translateY(-2px);box-shadow:0 8px 20px #6366f14d}:root[data-theme=dark] .media-device-selector-modal{background:var(--theme-card, #1e293b);border-color:var(--theme-border, #334155)}:root[data-theme=dark] .media-device-selector-header{background:var(--theme-background, #0f172a);border-color:var(--theme-border, #334155)}:root[data-theme=dark] .device-selector-actions{border-color:var(--theme-border, #334155)}.message-search-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease-out}.message-search-modal{background:var(--theme-card);border-radius:16px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003;animation:slideUp .3s ease-out}@media (max-width: 1366px){.message-search-modal{max-width:550px;max-height:75vh}}@media (max-width: 1199px){.message-search-modal{width:92%;max-width:520px;max-height:72vh}}.message-search-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--theme-border);background:var(--theme-primary);color:#fff;border-radius:16px 16px 0 0}.message-search-header h3{margin:0;font-size:20px;display:flex;align-items:center;gap:10px}.message-search-content{padding:20px 24px;flex:1;overflow:hidden;display:flex;flex-direction:column;gap:16px}.search-input-container{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:16px;color:var(--theme-text);opacity:.5;font-size:16px;pointer-events:none}.search-input{width:100%;padding:12px 45px;border:2px solid var(--theme-border);border-radius:12px;font-size:15px;transition:all .3s;font-family:inherit;background:var(--theme-bg);color:var(--theme-text)}.search-input:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px rgba(var(--theme-primary-rgb, 59, 130, 246),.1)}.btn-clear-search{position:absolute;right:12px;background:none;border:none;color:var(--theme-text);opacity:.5;cursor:pointer;padding:4px 8px;transition:all .2s;font-size:14px}.btn-clear-search:hover{opacity:1;transform:scale(1.1)}.search-results{flex:1;overflow-y:auto;display:flex;flex-direction:column}.search-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--theme-text);opacity:.6;text-align:center}.search-empty i{font-size:48px;margin-bottom:16px;opacity:.3}.search-empty p{margin:0;font-size:15px}.search-results-header{padding:8px 0;font-size:13px;color:var(--theme-text);opacity:.7;font-weight:600;border-bottom:1px solid var(--theme-border);margin-bottom:12px}.search-results-list{display:flex;flex-direction:column;gap:8px}.search-result-item{padding:12px 16px;background:var(--theme-bg);border:1px solid var(--theme-border);border-radius:10px;cursor:pointer;transition:all .2s}.search-result-item:hover{background:var(--theme-primary);color:#fff;border-color:var(--theme-primary);transform:translate(4px)}.search-result-sender{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600;margin-bottom:6px;opacity:.9}.search-result-time{font-size:11px;font-weight:400;opacity:.7}.search-result-text{font-size:14px;line-height:1.4;opacity:.8;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.search-result-text mark{background:#ffeb3b80;color:inherit;padding:2px 4px;border-radius:3px;font-weight:600}.search-result-item:hover .search-result-text mark{background:#ffffff4d}@media (max-width: 768px){.message-search-modal{width:95%;max-height:85vh}.message-search-content{padding:16px}}@media (max-width: 480px){.message-search-modal{width:100%;height:100%;max-height:100vh;border-radius:0}.message-search-header{border-radius:0;padding:16px}.message-search-header h3{font-size:18px}.message-search-content{padding:12px}}.blocked-users-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease-out}.blocked-users-modal{background:var(--theme-card);border-radius:16px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003;animation:slideUp .3s ease-out}@media (max-width: 1366px){.blocked-users-modal{max-width:550px;max-height:75vh}}@media (max-width: 1199px){.blocked-users-modal{width:92%;max-width:520px;max-height:72vh}}.blocked-users-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--theme-border);background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-radius:16px 16px 0 0}.blocked-users-header h3{margin:0;font-size:20px;display:flex;align-items:center;gap:10px}.blocked-users-content{padding:20px 24px;flex:1;overflow-y:auto;display:flex;flex-direction:column}.blocked-users-loading,.blocked-users-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--theme-text);opacity:.6;text-align:center}.blocked-users-loading i,.blocked-users-empty i{font-size:48px;margin-bottom:16px;opacity:.3}.blocked-users-loading p,.blocked-users-empty p{margin:0;font-size:15px}.blocked-users-list{display:flex;flex-direction:column;gap:12px}.blocked-user-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--theme-bg);border:1px solid var(--theme-border);border-radius:12px;transition:all .3s;gap:16px}.blocked-user-item:hover{border-color:var(--theme-primary);box-shadow:0 4px 12px #00000014}.blocked-user-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.blocked-user-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:600;flex-shrink:0;box-shadow:0 2px 8px #0000001a}.blocked-user-details{flex:1;min-width:0}.blocked-user-name{font-weight:600;font-size:15px;color:var(--theme-text);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blocked-user-date{font-size:12px;color:var(--theme-text);opacity:.6}.btn-unblock{padding:8px 16px;background:#10b981;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:6px;white-space:nowrap}.btn-unblock:hover{background:#059669;transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-unblock:active{transform:translateY(0)}@media (max-width: 768px){.blocked-users-modal{width:95%;max-height:85vh}.blocked-users-content{padding:16px}.blocked-user-item{flex-direction:column;align-items:flex-start}.btn-unblock{width:100%;justify-content:center}}@media (max-width: 480px){.blocked-users-modal{width:100%;height:100%;max-height:100vh;border-radius:0}.blocked-users-header{border-radius:0;padding:16px}.blocked-users-header h3{font-size:18px}.blocked-users-content,.blocked-user-item{padding:12px}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.chat-room{display:flex;flex-direction:column;height:90vh;max-height:900px;background:var(--theme-card);border-radius:20px;box-shadow:0 10px 40px #00000014;overflow:hidden;width:100%;max-width:950px;margin:0 340px 0 60px;border:1px solid var(--theme-border);position:relative}@media (min-width: 2560px){.chat-room{max-width:1400px;margin:0 auto}}@media (min-width: 2240px) and (max-width: 2559px){.chat-room{max-width:1350px;margin:0 auto}}@media (min-width: 2048px) and (max-width: 2239px){.chat-room{max-width:1300px;margin:0 auto}}@media (min-width: 1920px) and (max-width: 2047px){.chat-room{max-width:1200px;margin:0 auto}}@media (min-width: 1800px) and (max-width: 1919px){.chat-room{max-width:1180px;margin:0 auto}}@media (min-width: 1680px) and (max-width: 1799px){.chat-room{max-width:1150px;height:90vh;margin:0 auto}}@media (min-width: 1600px) and (max-width: 1679px){.chat-room{max-width:1120px;height:90vh;margin:0 auto}}@media (min-width: 1536px) and (max-width: 1599px){.chat-room{max-width:1080px;height:88vh;margin:0 auto}}@media (min-width: 1440px) and (max-width: 1535px){.chat-room{max-width:1020px;height:88vh;max-height:850px;margin:0 auto}}@media (min-width: 1200px) and (max-width: 1279px){.chat-room{max-width:780px;margin:0 285px 0 25px}}@media (min-width: 1024px) and (max-width: 1199px){.chat-room{max-width:720px;margin:0 275px 0 20px;border-radius:16px}}@media (min-width: 1280px) and (max-width: 1365px){.chat-room{max-width:780px;margin:0 310px 0 30px}}@media (min-width: 1366px) and (max-width: 1439px){.chat-room{max-width:850px;margin:0 320px 0 35px}}@media (min-width: 1440px) and (max-width: 1535px){.chat-room{max-width:950px;margin:0 380px 0 80px}}@media (min-width: 1536px) and (max-width: 1599px){.chat-room{max-width:1000px;margin:0 395px 0 90px}}@media (min-width: 1600px) and (max-width: 1679px){.chat-room{max-width:1050px;margin:0 412px 0 100px}}@media (min-width: 1680px) and (max-width: 1799px){.chat-room{max-width:1100px;margin:0 429px 0 110px}}@media (min-width: 1920px) and (max-width: 2047px){.chat-room{max-width:1200px;margin:0 446px 0 120px}}@media (min-width: 2560px) and (max-width: 3439px){.chat-room{max-width:1350px;margin:0 460px 0 140px}}@media (min-width: 3440px) and (max-width: 3839px){.chat-room{max-width:1500px;margin:0 520px 0 160px}}@media (min-width: 3840px){.chat-room{max-width:1650px;margin:0 560px 0 180px}}@media (min-width: 900px) and (max-width: 1023px){.chat-room{max-width:630px;height:82vh;max-height:none;border-radius:16px;margin:0 auto}}@media (min-width: 769px) and (max-width: 899px){.chat-room{max-width:520px;height:80vh;max-height:none;border-radius:16px;margin:0 10px}}@media (max-width: 768px){.chat-room{height:100vh;border-radius:0;max-height:none;max-width:100%;margin:0}}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;background:var(--theme-primary);color:#fff;border-bottom:1px solid rgba(255,255,255,.1);flex-wrap:wrap;gap:10px}@media (max-width: 1024px){.chat-header{padding:16px 20px}}@media (max-width: 768px){.chat-header{padding:12px 16px}.chat-header-info h2{font-size:16px}.brand-name-small{font-size:14px}}@media (max-width: 480px){.chat-header{padding:10px 12px}.chat-header-title{gap:8px}.btn-icon-header{width:36px;height:36px;font-size:16px}}.chat-header-title{display:flex;align-items:center;gap:12px}.brand-name-small{font-family:Poppins,sans-serif;font-weight:700;font-size:18px;letter-spacing:-.5px;opacity:.9}.chat-header-info h2{margin:0 0 5px;font-size:20px}.chat-header-actions{display:flex;gap:10px}.btn-icon-header{background:#fff3;border:none;color:#fff;font-size:20px;width:40px;height:40px;border-radius:50%;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center}.btn-icon-header:hover:not(:disabled){background:#ffffff4d;transform:scale(1.1)}.btn-icon-header:disabled{opacity:.5;cursor:not-allowed}.btn-icon-header.mobile-only{display:none}@media (max-width: 768px){.btn-icon-header.mobile-only{display:flex}}.chat-room-body{display:flex;flex:1;overflow:hidden;gap:0}@media (max-width: 1024px){.chat-room-body{flex-direction:column}.chat-sidebar{width:100%;max-height:200px;border-left:none;border-top:1px solid var(--theme-border)}}@media (max-width: 768px){.chat-sidebar{max-height:150px}}.chat-content{display:flex;flex-direction:column;flex:1;overflow:hidden;min-width:0;max-width:100%;background:#f8f9fa}.chat-content{margin-right:0;width:100%;box-sizing:border-box}.chat-sidebar{display:contents}.call-invite-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:99999!important;animation:fadeIn .3s ease-out;pointer-events:auto}.call-invite-content{background:#fff;border-radius:20px;padding:40px;text-align:center;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out;min-width:300px;position:relative;z-index:100000;pointer-events:auto}.call-invite-icon{font-size:80px;margin-bottom:20px;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.call-invite-content h3{margin:0 0 10px;font-size:24px;color:#333}.call-invite-content p{margin:0 0 30px;color:#666;font-size:16px}.call-invite-buttons{display:flex;gap:15px;justify-content:center}.btn-accept,.btn-reject{padding:15px 30px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s}.btn-accept{background:linear-gradient(135deg,#4ade80,#22c55e);color:#fff}.btn-accept:hover{transform:translateY(-2px);box-shadow:0 10px 20px #22c55e66}.btn-reject{background:#ef4444;color:#fff}.btn-reject:hover{transform:translateY(-2px);box-shadow:0 10px 20px #ef444466}.typing-indicator{padding:10px 20px;color:var(--theme-text);opacity:.7;font-size:13px;font-style:italic;border-top:1px solid var(--theme-border);background:var(--theme-card);animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:.7}}.toast-center{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{background:#fff;border-radius:12px;padding:16px 20px;min-width:300px;max-width:400px;box-shadow:0 8px 24px #00000026;display:flex;align-items:center;gap:12px;animation:slideInRight .3s ease-out;pointer-events:auto;cursor:pointer;transition:all .2s;border-left:4px solid}.toast:hover{transform:translate(-5px);box-shadow:0 12px 32px #0003}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0}.toast-message{flex:1;font-size:14px;line-height:1.4;color:#333}.toast-close{background:none;border:none;font-size:18px;cursor:pointer;opacity:.5;transition:opacity .2s;padding:4px;line-height:1;color:#666}.toast-close:hover{opacity:1}.toast-success{border-left-color:#10b981}.toast-success .toast-icon{background:#d1fae5;color:#10b981}.toast-error{border-left-color:#ef4444}.toast-error .toast-icon{background:#fee2e2;color:#ef4444}.toast-warning{border-left-color:#f59e0b}.toast-warning .toast-icon{background:#fef3c7;color:#f59e0b}.toast-info{border-left-color:#3b82f6}.toast-info .toast-icon{background:#dbeafe;color:#3b82f6}@media (max-width: 768px){.toast-center{top:10px;right:10px;left:10px}.toast{min-width:auto;max-width:100%}}@media (max-width: 480px){.toast{padding:12px 16px;font-size:13px}.toast-icon{width:20px;height:20px;font-size:14px}}.friends-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.friends-panel{background:#fff;width:90%;max-width:600px;height:85vh;max-height:750px;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s;border:1px solid rgba(0,0,0,.1)}@media (max-width: 1366px){.friends-panel{max-width:550px;height:80vh;max-height:700px}}@media (max-width: 1199px){.friends-panel{max-width:500px;height:75vh;max-height:650px}}.friends-panel-header{background:#fff;color:#1f2937;padding:24px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #f3f4f6}.friends-panel-header h2{margin:0;font-size:24px;font-weight:700;display:flex;align-items:center;gap:12px;color:#1f2937}.friends-panel-header h2 i{color:var(--theme-primary)}.close-btn{background:#f3f4f6;border:none;color:#6b7280;width:40px;height:40px;border-radius:10px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn:hover{background:#e5e7eb;color:#374151}.friends-message{padding:14px 24px;margin:16px 24px 0;border-radius:12px;font-weight:500;animation:slideDown .3s}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.friends-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.friends-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.friends-message.info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.friends-tabs{display:flex;gap:8px;padding:16px 24px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.tab-btn{flex:1;min-width:0;padding:12px 16px;border:2px solid transparent;background:#fff;color:#6b7280;border-radius:10px;cursor:pointer;font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab-btn:hover{background:#f3f4f6;border-color:#e5e7eb}.tab-btn.active{background:var(--theme-primary);color:#fff;border-color:var(--theme-primary)}.tab-btn .badge{background:#dc3545e6;color:#fff;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:700;min-width:22px;text-align:center}.tab-btn.active .badge{background:#ffffff4d}.tab-btn .badge.pulse{animation:badgePulse 1.5s infinite}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.friends-content{flex:1;overflow-y:auto;padding:24px}.friends-content::-webkit-scrollbar{width:8px}.friends-content::-webkit-scrollbar-track{background:#f8f9fa}.friends-content::-webkit-scrollbar-thumb{background:var(--theme-primary);border-radius:10px}.loading{text-align:center;padding:60px;color:#6c757d;font-size:16px}.loading i{font-size:32px;margin-bottom:12px;display:block}.empty-state{text-align:center;padding:80px 40px;color:#6c757d}.empty-state i{font-size:64px;opacity:.3;margin-bottom:20px}.empty-state p{font-size:18px;margin-bottom:24px;font-weight:500}.btn-primary{background:var(--theme-primary);color:#fff;border:none;padding:12px 28px;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s;font-size:15px}.btn-primary:hover{background:var(--theme-secondary);transform:translateY(-1px)}.friend-item,.request-item,.search-item{display:flex;align-items:center;gap:16px;padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:10px;transition:all .2s}.friend-item:hover,.request-item:hover,.search-item:hover{border-color:var(--theme-primary);background:#f9fafb;transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.friend-avatar,.request-avatar,.search-avatar{width:48px;height:48px;border-radius:12px;background:var(--theme-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;flex-shrink:0;text-transform:uppercase}.friend-info,.request-info,.search-info{flex:1;min-width:0}.friend-name,.request-name,.search-name{font-size:16px;font-weight:600;color:#2c3e50;margin-bottom:4px}.friend-since,.request-time,.search-id{font-size:13px;color:#6c757d;display:flex;align-items:center;gap:6px}.request-time.pending{color:#ffc107;font-weight:600}.btn-remove,.btn-accept,.btn-reject,.btn-add{padding:10px 16px;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s;display:flex;align-items:center;gap:6px;font-size:14px}.btn-remove{background:#ef4444;color:#fff}.btn-remove:hover{background:#dc2626}.btn-accept{background:#10b981;color:#fff}.btn-accept:hover{background:#059669}.btn-reject{background:#6b7280;color:#fff}.btn-reject:hover{background:#4b5563}.btn-add{background:var(--theme-primary);color:#fff}.btn-add:hover{background:var(--theme-secondary)}.request-actions{display:flex;gap:8px}.search-box{display:flex;gap:12px;margin-bottom:24px}.search-box input{flex:1;padding:12px 18px;border:2px solid #e5e7eb;border-radius:10px;font-size:15px;transition:all .2s;background:#fff}.search-box input:focus{outline:none;border-color:var(--theme-primary);background:#fff}.btn-search{padding:12px 24px;background:var(--theme-primary);color:#fff;border:none;border-radius:10px;cursor:pointer;font-size:16px;transition:all .2s;font-weight:600}.btn-search:hover{background:var(--theme-secondary)}@media (max-width: 768px){.friends-panel{width:100%;height:100vh;max-height:none;border-radius:0}.friends-tabs{gap:4px;padding:12px 16px}.tab-btn{padding:12px 8px;font-size:12px;gap:4px}.tab-btn i{display:none}.friends-content{padding:16px}}.welcome-screen{width:100%;min-height:100vh;padding:0;background:#f8f9fa;display:flex;align-items:center;justify-content:center;animation:fadeIn .6s ease-out}.welcome-container{display:grid;grid-template-columns:1fr 1.5fr;gap:0;max-width:1400px;width:95%;background:#fff;border-radius:20px;box-shadow:0 10px 40px #00000014;overflow:hidden;border:1px solid #e5e7eb;animation:slideUp .6s ease-out;margin:0 auto}@media (max-width: 1366px){.welcome-container{max-width:1200px;width:92%;margin:0 auto}}@media (max-width: 1199px){.welcome-container{max-width:1000px;width:90%;margin:0 auto}}.welcome-left{padding:60px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid #f0f0f0}@media (max-width: 1366px){.welcome-left{padding:48px}}@media (max-width: 1199px){.welcome-left{padding:40px}}.welcome-right{padding:60px 50px;background:#fafbfc;overflow-y:auto;max-height:90vh;scrollbar-width:none;-ms-overflow-style:none}@media (max-width: 1366px){.welcome-right{padding:48px 42px}}@media (max-width: 1199px){.welcome-right{padding:40px 36px}}.welcome-right::-webkit-scrollbar{display:none}.welcome-header{margin-bottom:30px}.brand-name{font-size:42px;color:#1a1a1a;margin-bottom:8px;font-weight:700;letter-spacing:-.5px;position:relative;display:inline-block}.brand-name:after{content:"";position:absolute;bottom:-5px;left:0;width:60px;height:4px;background:var(--theme-primary);border-radius:2px}.welcome-subtitle{color:#6b7280;font-size:15px;margin:15px 0 0;line-height:1.6}.auth-tabs{display:flex;gap:8px;margin-bottom:35px;background:transparent;padding:0;border-radius:0;position:relative;border-bottom:2px solid #e5e7eb;overflow:visible}.auth-tabs:after{content:"";position:absolute;bottom:-2px;left:0;width:calc(33.333% - 5.33px);height:3px;background:var(--theme-primary);border-radius:2px 2px 0 0;transition:transform .4s cubic-bezier(.4,0,.2,1);z-index:2}.auth-tabs.login-mode:after{transform:translate(0)}.auth-tabs.signup-mode:after{transform:translate(calc(100% + 8px))}.auth-tabs.guest-mode:after{transform:translate(calc(200% + 16px))}.tab-button{flex:1;padding:14px 20px;border:none;background:transparent;border-radius:0;font-size:14px;font-weight:600;color:#9ca3af;cursor:pointer;transition:all .3s ease;position:relative;z-index:1}.tab-button.active{color:var(--theme-primary)}.tab-button:hover:not(.active){color:#6b7280;background:#f9fafb}.auth-form{display:flex;flex-direction:column;gap:20px;animation:formSlideIn .4s ease-out}@keyframes formSlideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#333;font-size:14px}.input-field{padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;transition:all .2s ease;font-family:inherit;background:#fff}.input-field:hover{border-color:#9ca3af}.input-field:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px #667eea14}.error-message{padding:12px 16px;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-size:14px;display:flex;align-items:center;gap:8px}.color-picker{display:flex;gap:10px;flex-wrap:wrap}.color-option{width:36px;height:36px;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:all .2s ease;padding:0}.color-option:hover{transform:scale(1.08);box-shadow:0 2px 8px #00000026}.color-option.selected{border-color:#1f2937;transform:scale(1.08);box-shadow:0 0 0 3px #667eea33}.btn-primary{padding:14px 28px;border:none;border-radius:8px;font-size:15px;font-weight:600;background:var(--theme-primary);color:#fff;cursor:pointer;transition:all .2s ease;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary:hover:not(:disabled){background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea40}.btn-primary:active:not(:disabled){transform:translateY(0)}.social-login{margin-top:30px}.social-divider{text-align:center;margin:20px 0;position:relative;color:#999;font-size:14px}.social-divider:before,.social-divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:#e0e0e0}.social-divider:before{left:0}.social-divider:after{right:0}.social-buttons{display:flex;flex-direction:column;gap:12px}.btn-social{padding:12px 20px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:10px;background:#fff}.btn-social:hover{border-color:#d1d5db;transform:translateY(-1px);box-shadow:0 2px 8px #00000014;background:#fafbfc}.btn-social:active{transform:translateY(0)}.btn-google{color:#4285f4}.btn-google:hover{background:#f8f9fa}.btn-github{color:#24292e}.btn-github:hover{background:#f6f8fa}.btn-microsoft{color:#00a4ef}.btn-microsoft:hover{background:#f3f9fc}.features-title{font-size:28px;font-weight:700;color:#1f2937;margin-bottom:35px;text-align:left;letter-spacing:-.5px}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;animation:fadeInUp .8s ease-out .2s both}.feature-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 1px 3px #0000000d;transition:all .2s ease;border:1px solid #f0f0f0}.feature-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;border-color:#e5e7eb}.feature-icon-wrapper{width:48px;height:48px;border-radius:10px;background:#f0f4ff;display:flex;align-items:center;justify-content:center;color:var(--theme-primary);font-size:22px;margin-bottom:14px;transition:all .2s ease}.feature-card:hover .feature-icon-wrapper{background:var(--theme-primary);color:#fff;transform:scale(1.05)}.feature-card h3{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 6px;line-height:1.4}.feature-card p{font-size:13px;color:#6b7280;margin:0;line-height:1.6}@media (max-width: 1024px){.welcome-container{grid-template-columns:1fr;width:90%}.welcome-left{padding:40px;border-right:none;border-bottom:1px solid #f0f0f0}.welcome-right{max-height:none;padding:40px}.features-grid{grid-template-columns:1fr}.brand-name{font-size:36px}}@media (max-width: 640px){.welcome-container{width:95%;border-radius:16px}.welcome-left,.welcome-right{padding:30px}.brand-name{font-size:32px}.features-title{font-size:24px}}.guest-info{background:#f0f4ff;border:1px solid #d4e1ff;border-radius:10px;padding:14px;display:flex;gap:12px;align-items:flex-start;margin-bottom:10px}.guest-info i{color:var(--theme-primary);font-size:20px;margin-top:2px;flex-shrink:0}.guest-info p{margin:0;color:#555;font-size:14px;line-height:1.5}.tab-button i{margin-right:5px}.settings-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.settings-modal{background:var(--theme-card);border-radius:24px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #00000026;animation:slideUp .3s ease-out;border:1px solid var(--theme-border)}@media (max-width: 1366px){.settings-modal{max-width:550px;max-height:85vh}}@media (max-width: 1199px){.settings-modal{width:92%;max-width:500px;max-height:82vh}}@media (max-width: 768px){.settings-modal{width:95%;max-height:90vh;border-radius:20px}}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;border-bottom:1px solid var(--theme-border);background:var(--theme-primary);color:#fff;border-radius:24px 24px 0 0}.settings-header h2{margin:0;font-size:24px}.btn-close{background:#fff3;border:none;color:#fff;width:36px;height:36px;border-radius:50%;font-size:20px;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center}.btn-close:hover{background:#ffffff4d;transform:rotate(90deg)}.settings-content{padding:30px}@media (max-width: 1366px){.settings-content{padding:24px}}@media (max-width: 1199px){.settings-content{padding:20px}}@media (max-width: 768px){.settings-content{padding:16px}}.settings-section{margin-bottom:40px}.settings-section:last-child{margin-bottom:0}.settings-section h3{margin:0 0 20px;font-size:18px;color:var(--theme-text, #333);font-weight:600}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--theme-text, #555);font-size:14px}.input-field{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:10px;font-size:15px;transition:all .3s;font-family:inherit}.input-field:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.color-picker{display:flex;gap:12px;flex-wrap:wrap}.color-option{width:45px;height:45px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:all .3s;padding:0}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:var(--theme-text, #333);box-shadow:0 0 0 3px #667eea4d}:root[data-theme=dark] .color-option.selected{border-color:#f1f5f9}.theme-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:15px}.theme-option{display:flex;flex-direction:column;align-items:center;gap:10px;padding:15px;border:2px solid var(--theme-border, #e0e0e0);border-radius:12px;background:var(--theme-card, white);cursor:pointer;transition:all .3s}.theme-option:hover{border-color:var(--theme-primary, #667eea);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.theme-option.selected{border-color:var(--theme-primary, #667eea);box-shadow:0 0 0 3px rgba(var(--theme-primary-rgb, 102, 126, 234),.2);background:var(--theme-card, white)}.theme-preview{width:60px;height:60px;border-radius:12px;box-shadow:0 4px 12px #00000026}.theme-option span{font-size:13px;color:var(--theme-text, #666);font-weight:500;opacity:.8}.toggle-group{margin-bottom:15px}.toggle-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:15px;color:var(--theme-text, #555)}.toggle-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#667eea}.settings-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 30px;border-top:2px solid #f0f0f0}.btn-cancel,.btn-save{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s}.btn-cancel{background:var(--theme-border, #f0f0f0);color:var(--theme-text, #333);border:2px solid var(--theme-border, #e0e0e0)}.btn-cancel:hover{background:var(--theme-border, #e0e0e0);border-color:var(--theme-border, #d0d0d0);transform:translateY(-1px)}.btn-save{background:var(--theme-primary);color:#fff}.btn-save:hover{background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.btn-logout{width:100%;padding:12px 24px;border:2px solid #ef4444;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s;background:var(--theme-card, white);color:#ef4444;display:flex;align-items:center;justify-content:center;gap:8px}:root[data-theme=dark] .btn-logout{background:#ef4444;color:#fff;border-color:#ef4444}.btn-logout:hover{background:#ef4444;color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #ef44444d}:root[data-theme=dark] .btn-logout:hover{background:#fff;color:#ef4444}.btn-delete-account{width:100%;padding:12px 24px;border:2px solid #dc2626;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s;background:var(--theme-card, white);color:#dc2626;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px}:root[data-theme=dark] .btn-delete-account{background:#dc2626;color:#fff;border-color:#dc2626}.btn-delete-account:hover{background:#dc2626;color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #dc26264d}:root[data-theme=dark] .btn-delete-account:hover{background:#fff;color:#dc2626}.status-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.status-option{display:flex;align-items:center;gap:10px;padding:14px 18px;border:2px solid var(--theme-border, #e0e0e0);border-radius:12px;background:var(--theme-card, white);cursor:pointer;transition:all .3s;font-size:15px;font-weight:500;color:var(--theme-text, #555)}.status-option:hover{border-color:var(--theme-primary, #667eea);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.status-option.selected{border-color:var(--theme-primary, #667eea);box-shadow:0 0 0 3px rgba(var(--theme-primary-rgb, 102, 126, 234),.2);background:var(--theme-card, white)}.status-option i{font-size:14px}.status-option span{flex:1}.create-room-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:1500;animation:fadeIn .3s ease-out}.create-room-overlay.closing{animation:fadeOut .2s ease-out}.create-room-modal{background:#fff;border-radius:20px;width:90%;max-width:540px;box-shadow:0 20px 60px #0000004d;border:1px solid #e5e7eb;animation:slideUp .3s ease-out;overflow:hidden}@media (max-width: 1366px){.create-room-modal{max-width:500px}}@media (max-width: 1199px){.create-room-modal{width:92%;max-width:480px}}@media (max-width: 768px){.create-room-modal{width:95%;max-width:none;border-radius:16px}}.create-room-overlay.closing .create-room-modal{animation:slideDown .2s ease-out}.create-room-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;border-bottom:1px solid #e5e7eb;background:var(--theme-primary);color:#fff}.create-room-header h2{margin:0;font-size:22px;font-weight:700;display:flex;align-items:center;gap:10px}.btn-close-modal{background:#fff3;border:none;color:#fff;width:36px;height:36px;border-radius:50%;font-size:18px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.create-room-content{padding:28px 30px;max-height:520px;overflow-y:auto;background:#fff}@media (max-width: 1366px){.create-room-content{padding:24px 26px;max-height:480px}}@media (max-width: 1199px){.create-room-content{padding:20px 22px;max-height:450px}}@media (max-width: 768px){.create-room-content{padding:16px 18px}}.create-room-content::-webkit-scrollbar{width:8px}.create-room-content::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.create-room-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.create-room-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}.create-room-content .form-group{margin-bottom:25px}.create-room-content label{display:block;margin-bottom:8px;font-weight:600;color:#1f2937;font-size:14px}.input-field{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:15px;transition:all .2s ease;background:#fff;color:#1f2937;font-family:inherit}.input-field::placeholder{color:#9ca3af}.input-field.input-error:focus{box-shadow:0 0 0 3px #ef44441a}.field-hint{margin-top:6px;font-size:12px;color:var(--theme-text);opacity:.6}.room-id-input-group{display:flex;gap:8px;align-items:center}.room-id-input{flex:1}.btn-generate-secure,.btn-reset-id{padding:12px 16px;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;background:var(--theme-primary);color:#fff;white-space:nowrap;transition:all .3s;flex-shrink:0}.btn-reset-id{padding:12px;background:var(--theme-border);color:var(--theme-text);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.btn-reset-id:hover{background:#ef4444;color:#fff}.btn-generate-secure:hover{background:var(--theme-secondary);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.room-id-hint{margin-top:8px;font-size:13px;color:var(--theme-text);opacity:.7}.room-id-hint code{background:var(--theme-border);padding:4px 8px;border-radius:6px;font-size:12px;font-family:Courier New,monospace;word-break:break-all}.room-id-hint.checking{color:var(--theme-primary);opacity:1}.room-id-error{margin-top:8px;font-size:13px;color:#ef4444;font-weight:500}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600;color:var(--theme-text);font-size:14px}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--theme-primary)}.create-room-info{margin-top:20px;padding:15px;background:var(--theme-border);border-radius:10px;border-left:3px solid var(--theme-primary)}.info-text{margin:0;font-size:13px;color:var(--theme-text);opacity:.8;line-height:1.6}.info-text strong{color:var(--theme-text);opacity:1}.create-room-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 30px;border-top:1px solid var(--theme-border);background:var(--theme-card)}.btn-cancel,.btn-create{flex:1;padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex!important;align-items:center;justify-content:center;gap:8px;opacity:1!important;visibility:visible!important;position:relative;z-index:10}.btn-create:hover:not(:disabled){background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.btn-create:disabled{opacity:.5;cursor:not-allowed}.create-room-type-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:transparent;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease}.create-room-type-modal-overlay.closing{animation:fadeOut .2s ease}.create-room-type-modal{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000004d;width:90%;max-width:520px;animation:slideUp .3s ease;overflow:hidden;border:1px solid #e5e7eb}@media (max-width: 1366px){.create-room-type-modal{max-width:480px}}@media (max-width: 1199px){.create-room-type-modal{width:92%;max-width:460px}}@media (max-width: 768px){.create-room-type-modal{width:95%;max-width:none}}.create-room-type-modal-header{padding:24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;background:var(--theme-primary)}.create-room-type-modal-header h2{margin:0;font-size:22px;color:#fff;display:flex;align-items:center;gap:12px;font-weight:700}.create-room-type-modal-header h2 i{font-size:24px}.create-room-type-modal .close-btn{background:#fff3;border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#fff;font-size:18px}.create-room-type-modal .close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.create-room-type-modal-content{padding:24px;display:flex;flex-direction:column;gap:16px;background:#fff}.room-type-option{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:20px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:16px}.room-type-option:hover{border-color:var(--theme-primary);background:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #0000001f}.room-type-icon{width:56px;height:56px;border-radius:12px;background:var(--theme-primary);display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;flex-shrink:0}.room-type-info{flex:1}.room-type-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:6px;display:flex;align-items:center;gap:8px}.room-type-description{font-size:14px;color:var(--text-secondary);line-height:1.5}.room-type-arrow{color:var(--text-secondary);font-size:20px;opacity:.5;transition:all .3s ease}.room-type-option:hover .room-type-arrow{opacity:1;transform:translate(4px);color:var(--primary-color)}@media (max-width: 768px){.create-room-type-modal{width:95%;max-width:none}.create-room-type-modal-content,.room-type-option{padding:16px}.room-type-icon{width:48px;height:48px;font-size:24px}.room-type-title{font-size:16px}.room-type-description{font-size:13px}}.friend-room-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:transparent;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease}.friend-room-modal-overlay.closing{animation:fadeOut .2s ease}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.friend-room-modal{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000004d;width:90%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;animation:slideUp .3s ease;overflow:hidden;border:1px solid #e5e7eb}.friend-room-modal-overlay.closing .friend-room-modal{animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(20px) scale(.95)}}.friend-room-modal-header{padding:24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;background:var(--theme-primary);flex-shrink:0}.friend-room-modal-header h2{margin:0;font-size:22px;color:#fff;display:flex;align-items:center;gap:12px;font-weight:700}.friend-room-modal-header h2 i{font-size:24px}.friend-room-modal .close-btn{background:#fff3;border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#fff;font-size:18px}.friend-room-modal .close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.friend-room-modal-content{padding:24px;display:flex;flex-direction:column;gap:20px;overflow-y:auto;flex:1;background:#fff}.friend-room-modal-content::-webkit-scrollbar{width:8px}.friend-room-modal-content::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.friend-room-modal-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.friend-room-modal-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}.room-name-section{display:flex;flex-direction:column;gap:8px}.room-name-section label{font-size:14px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.room-name-section input{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#1f2937;font-size:15px;transition:all .2s ease}.room-name-section input:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px #3b82f61a}.room-name-section input::placeholder{color:#9ca3af}.friend-selection-section{display:flex;flex-direction:column;gap:12px}.friend-selection-header{font-size:14px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.selected-count{background:var(--primary-color);color:#fff;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600}.friend-list{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:10px;padding:10px;background:#f9fafb}.friend-list::-webkit-scrollbar{width:6px}.friend-list::-webkit-scrollbar-track{background:var(--bg-primary);border-radius:3px}.friend-list::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:3px}.friend-checkbox-item{display:flex;align-items:center;gap:12px;padding:14px;border-radius:10px;cursor:pointer;transition:all .2s ease;background:#fff;border:2px solid transparent}.friend-checkbox-item:hover{background:#f9fafb;border-color:#e5e7eb}.friend-checkbox-item.selected{background:#eff6ff;border:2px solid var(--theme-primary);padding:14px;box-shadow:0 2px 8px #3b82f626}.friend-checkbox{width:20px;height:20px;border:2px solid var(--border-color);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.friend-checkbox-item.selected .friend-checkbox{background:var(--primary-color);border-color:var(--primary-color)}.friend-checkbox i{color:#fff;font-size:12px;display:none}.friend-checkbox-item.selected .friend-checkbox i{display:block}.friend-avatar{width:44px;height:44px;border-radius:50%;background:var(--theme-primary);display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:18px;flex-shrink:0;text-transform:uppercase;box-shadow:0 2px 8px #0000001a}.friend-info{flex:1;min-width:0}.friend-name{font-weight:600;color:var(--text-primary);font-size:15px;margin-bottom:2px}.friend-id{font-size:12px;color:var(--text-secondary)}.no-friends-message{text-align:center;padding:40px 20px;color:var(--text-secondary)}.no-friends-message i{font-size:48px;margin-bottom:12px;opacity:.5}.no-friends-message p{margin:8px 0;font-size:14px}.no-friends-message .btn-link{margin-top:12px;background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:14px;font-weight:600;text-decoration:underline;padding:8px}.no-friends-message .btn-link:hover{opacity:.8}.friend-room-modal-footer{padding:20px 24px;border-top:1px solid #e5e7eb;display:flex;gap:12px;background:#f9fafb;flex-shrink:0}.friend-room-modal-footer button{flex:1;padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex!important;align-items:center;justify-content:center;gap:8px;opacity:1!important;visibility:visible!important}.btn-cancel{background:#e5e7eb;color:#374151;border:2px solid #e5e7eb}.btn-cancel:hover{background:#d1d5db;border-color:#d1d5db}.btn-create{background:var(--theme-primary);color:#fff;border:2px solid var(--theme-primary)}.btn-create:hover:not(:disabled){background:var(--theme-secondary);border-color:var(--theme-secondary)}.btn-create:disabled{opacity:.5;cursor:not-allowed;transform:none!important}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.friend-room-modal{width:95%;max-width:none;max-height:90vh}.friend-room-modal-content{padding:16px}.friend-room-modal-footer{padding:16px;flex-direction:column}.friend-room-modal-footer button{width:100%}.friend-list{max-height:250px}}.join-room-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:1500;animation:fadeIn .3s ease-out}.join-room-modal{background:var(--theme-card);border-radius:20px;width:90%;max-width:450px;box-shadow:0 10px 40px #00000026;border:1px solid var(--theme-border);animation:slideUp .3s ease-out}.join-room-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;border-bottom:1px solid var(--theme-border);background:var(--theme-primary);color:#fff;border-radius:20px 20px 0 0}.join-room-header h2{margin:0;font-size:22px}.join-room-content{padding:30px}.join-room-content .form-group{margin-bottom:20px}.error-message-modal{margin-top:15px;padding:12px 16px;background:#fee2e2;border:1px solid #fecaca;border-radius:10px;color:#991b1b;font-size:14px;animation:fadeIn .3s ease-out}.checking-message{margin-top:15px;padding:12px 16px;background:var(--theme-border);border-radius:10px;color:var(--theme-text);font-size:14px;text-align:center;opacity:.7}.join-room-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 30px;border-top:1px solid var(--theme-border)}.btn-join{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s;background:var(--theme-primary);color:#fff}.btn-join:hover:not(:disabled){background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.delete-room-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:1600;animation:fadeIn .3s ease-out}.delete-room-modal{background:var(--theme-card);border-radius:20px;width:90%;max-width:400px;box-shadow:0 10px 40px #00000026;border:1px solid var(--theme-border);animation:slideUp .3s ease-out}.delete-room-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;border-bottom:1px solid var(--theme-border);background:#ef4444;color:#fff;border-radius:20px 20px 0 0}.delete-room-header h2{margin:0;font-size:22px}.delete-room-content{padding:30px}.delete-room-content p{margin:0 0 15px;color:var(--theme-text);font-size:16px;line-height:1.6}.delete-warning{color:#ef4444;font-weight:500;font-size:14px}.delete-room-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 30px;border-top:1px solid var(--theme-border)}.btn-delete-confirm{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s;background:#ef4444;color:#fff}.btn-delete-confirm:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 8px 20px #ef44444d}.room-password-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.room-password-modal{background:var(--theme-card);border-radius:20px;padding:0;box-shadow:0 20px 60px #0000004d;max-width:450px;width:90%;max-height:90vh;overflow:hidden;animation:slideUp .3s ease-out;border:1px solid var(--theme-border)}.room-password-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-bottom:1px solid var(--theme-border);background:var(--theme-primary);color:#fff}.room-password-header h2{margin:0;font-size:22px;font-weight:600}.btn-close-modal{background:#fff3;border:none;color:#fff;font-size:24px;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-close-modal:hover{background:#ffffff4d;transform:rotate(90deg)}.room-password-content{padding:30px}.room-password-content p{margin:0 0 20px;color:var(--theme-text);font-size:15px;line-height:1.5}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--theme-text);font-weight:500;font-size:14px}.required{color:#ef4444}.input-field{width:100%;padding:12px 16px;border:2px solid var(--theme-border);border-radius:10px;font-size:15px;transition:all .2s;background:var(--theme-card);color:var(--theme-text);box-sizing:border-box}.input-field:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px #3b82f61a}.field-hint{margin-top:6px;font-size:12px;color:#666}.field-hint.error{color:#ef4444}.room-password-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 30px;border-top:1px solid var(--theme-border);background:var(--theme-card)}.btn-cancel,.btn-join{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel{background:var(--theme-border);color:var(--theme-text)}.btn-cancel:hover{background:#e2e8f0}.btn-join{background:var(--theme-primary);color:#fff}.btn-join:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-join:disabled{opacity:.5;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.message-notification{position:fixed;top:20px;right:20px;width:350px;background:var(--theme-card, white);border-radius:12px;padding:16px;box-shadow:0 8px 32px #00000026;border:2px solid var(--theme-primary, #667eea);display:flex;gap:12px;cursor:pointer;transition:all .3s ease;transform:translate(400px);opacity:0;z-index:9999}.message-notification.visible{transform:translate(0);opacity:1}.message-notification:hover{box-shadow:0 12px 40px #0003;transform:translateY(-2px) translate(0)}.notification-icon{width:48px;height:48px;border-radius:50%;background:var(--theme-primary, #667eea);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.notification-content{flex:1;min-width:0}.notification-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.notification-room{font-weight:600;color:var(--theme-primary, #667eea);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-close{background:none;border:none;color:var(--theme-text, #666);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s;font-size:14px}.notification-close:hover{background:#0000001a;color:var(--theme-text, #333)}.notification-sender{font-weight:600;color:var(--theme-text, #333);font-size:15px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-text{color:var(--theme-text-secondary, #666);font-size:14px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}@media (max-width: 768px){.message-notification{width:calc(100% - 40px);right:20px;left:20px}}.app-container{width:100%;max-width:1400px;margin:0 280px 0 auto;padding:20px;box-sizing:border-box}@media (min-width: 2560px){.app-container{max-width:2000px;padding:40px 50px}}@media (min-width: 2240px) and (max-width: 2559px){.app-container{max-width:1900px;padding:35px 45px}}@media (min-width: 2048px) and (max-width: 2239px){.app-container{max-width:1800px;padding:35px 40px}}@media (min-width: 1920px) and (max-width: 2047px){.app-container{max-width:1700px;padding:30px 35px}}@media (min-width: 1800px) and (max-width: 1919px){.app-container{max-width:1650px;padding:28px 30px}}@media (min-width: 1680px) and (max-width: 1799px){.app-container{max-width:1600px;padding:25px 28px}}@media (min-width: 1600px) and (max-width: 1679px){.app-container{max-width:1550px;padding:25px}}@media (min-width: 1536px) and (max-width: 1599px){.app-container{max-width:1500px;padding:22px}}@media (min-width: 1440px) and (max-width: 1535px){.app-container{max-width:1450px;padding:20px}}@media (min-width: 1366px) and (max-width: 1439px){.app-container{max-width:1350px;margin:0 0 0 auto;padding:18px 18px 18px 0;display:flex;justify-content:center;align-items:flex-start;width:100%}}@media (min-width: 1280px) and (max-width: 1365px){.app-container{max-width:1280px;margin:0 0 0 auto;padding:15px 15px 15px 0;display:flex;justify-content:center;align-items:flex-start;width:100%}}@media (min-width: 1200px) and (max-width: 1279px){.app-container{max-width:100%;margin:0 0 0 auto;padding:8px 6px 8px 0;display:flex;justify-content:center;align-items:flex-start;width:100%}}@media (min-width: 1024px) and (max-width: 1199px){.app-container{max-width:100%;margin:0 0 0 auto;padding:6px 4px 6px 0;display:flex;justify-content:center;align-items:flex-start;width:100%}}@media (min-width: 900px) and (max-width: 1023px){.app-container{max-width:100%;padding:10px 8px}}@media (min-width: 769px) and (max-width: 899px){.app-container{max-width:100%;padding:8px 6px}}@media (max-width: 768px){.app-container{padding:0}}.room-selector{background:var(--theme-card);border-radius:24px;padding:40px;box-shadow:0 10px 40px #00000014,0 0 0 1px var(--theme-border);max-width:550px;margin:0 auto;animation:fadeInUp .5s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--theme-border)}@media (max-width: 1366px){.room-selector{max-width:90%;padding:32px;margin:0 auto;position:relative;left:0;transform:none}}@media (max-width: 1199px){.room-selector{max-width:92%;padding:28px;margin:0 auto;position:relative;left:0;transform:none}}@media (max-width: 1024px){.room-selector{max-width:90%;padding:35px}}@media (max-width: 768px){.room-selector{max-width:95%;padding:25px;border-radius:20px}}@media (max-width: 480px){.room-selector{max-width:100%;padding:20px;border-radius:16px}}.brand-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid var(--theme-border)}.brand-header .brand-name{font-size:42px;color:var(--theme-primary);margin:0;font-weight:800;letter-spacing:-1px;flex:1}.header-actions{display:flex;gap:8px;align-items:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.user-info-header{display:flex;align-items:center;gap:15px;margin-bottom:30px;padding-bottom:25px;border-bottom:2px solid #f0f0f0;flex-wrap:wrap}@media (max-width: 768px){.user-info-header{gap:12px;margin-bottom:20px;padding-bottom:20px}.user-avatar{width:60px;height:60px;font-size:24px}.user-info-header h2{font-size:20px}}@media (max-width: 480px){.user-info-header{gap:10px;margin-bottom:16px;padding-bottom:16px}.user-avatar{width:50px;height:50px;font-size:20px}.user-info-header h2{font-size:18px}}.user-info{flex:1}.user-avatar{width:70px;height:70px;border-radius:50%;background:var(--theme-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;flex-shrink:0;box-shadow:0 4px 12px #00000026;transition:all .3s}.user-avatar:hover{transform:scale(1.05)}.user-info-header h2{margin:0;color:var(--theme-text);font-size:24px}.user-status{color:var(--theme-text);opacity:.7;font-size:14px;margin:5px 0 0}.btn-icon{background:none;border:none;font-size:22px;cursor:pointer;padding:8px;margin-left:auto;opacity:.7;transition:all .3s;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.btn-icon:hover{opacity:1;background:#f0f0f0}.settings-btn:hover{background:#f0f0f0}.friends-btn{color:var(--theme-primary);background:none}.friends-btn:hover{background:#f0f0f0;color:var(--theme-secondary)}.room-actions{display:flex;flex-direction:column;gap:20px}.btn-primary,.btn-secondary{padding:15px 30px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s}.btn-primary{background:var(--theme-primary);color:#fff;position:relative;overflow:hidden}.btn-primary:hover:not(:disabled){background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary,.btn-join-room{background:var(--theme-border);color:var(--theme-text);border:1px solid var(--theme-border);padding:15px 30px;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;width:100%}.btn-secondary:hover,.btn-join-room:hover{background:var(--theme-secondary);color:#fff;border-color:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.divider{text-align:center;color:#999;position:relative;margin:10px 0}.divider:before,.divider:after{content:"";position:absolute;top:50%;width:45%;height:1px;background:#e0e0e0}.divider:before{left:0}.divider:after{right:0}.join-room{display:flex;gap:10px}@media (max-width: 768px){.join-room{flex-direction:column}.btn-join-room{width:100%}}@media (max-width: 480px){.join-room-input-group{gap:8px}}.input-field{flex:1;padding:15px 18px;border:2px solid #e0e0e0;border-radius:12px;font-size:16px;transition:all .3s;font-family:inherit}.input-field:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px #3b82f61a;transform:translateY(-1px)}.input-field.input-error{border-color:#ef4444}.input-field.input-error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-message{margin-top:10px;padding:12px 16px;background:#fee2e2;border:1px solid #fecaca;border-radius:10px;color:#991b1b;font-size:14px;animation:fadeIn .3s ease-out}.info-box{margin-top:35px;padding:25px;background:var(--theme-card);border-radius:16px;border:1px solid var(--theme-border)}.info-box h3{margin:0 0 15px;color:var(--theme-text);font-size:18px}.info-box ul{list-style:none;padding:0;margin:0}.info-box li{color:#666;font-size:14px;padding:8px 0 8px 25px;position:relative}.info-box li:before{content:"✓";position:absolute;left:0;color:var(--theme-primary);font-weight:700}.rooms-list-section{margin-top:30px;padding:25px;background:var(--theme-card);border-radius:16px;border:1px solid var(--theme-border)}.rooms-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.rooms-list-header h3{margin:0;color:var(--theme-text);font-size:18px}.btn-refresh{background:var(--theme-border);border:none;padding:8px 12px;border-radius:8px;cursor:pointer;font-size:16px;transition:all .2s ease}.btn-refresh:hover{background:var(--theme-primary);color:#fff;transform:scale(1.05)}.btn-refresh:active{transform:scale(.95)}.btn-refresh i{transition:transform .6s ease}.btn-refresh:active i{transform:rotate(360deg)}.rooms-loading,.rooms-empty{text-align:center;padding:20px;color:var(--theme-text);opacity:.7}.rooms-list{display:flex;flex-direction:column;gap:12px}.room-item{display:flex;justify-content:space-between;align-items:center;padding:15px;background:var(--theme-card);border:1px solid var(--theme-border);border-radius:12px;transition:all .3s;flex-wrap:wrap;gap:10px;animation:slideInUp .4s ease-out;animation-fill-mode:both}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.room-item:nth-child(1){animation-delay:.05s}.room-item:nth-child(2){animation-delay:.1s}.room-item:nth-child(3){animation-delay:.15s}.room-item:nth-child(4){animation-delay:.2s}.room-item:nth-child(5){animation-delay:.25s}.room-item:nth-child(6){animation-delay:.3s}.room-item:nth-child(7){animation-delay:.35s}.room-item:nth-child(8){animation-delay:.4s}.room-item:nth-child(9){animation-delay:.45s}.room-item:nth-child(10){animation-delay:.5s}@media (max-width: 768px){.room-item{flex-direction:column;align-items:flex-start}.room-item-actions{width:100%;display:flex;justify-content:flex-end}}@media (max-width: 480px){.room-item{padding:12px}.room-item-actions{flex-wrap:wrap;gap:6px}}.room-item:hover{border-color:var(--theme-primary);box-shadow:0 4px 12px #0000001a}.room-item-info{flex:1}.room-item-name{font-weight:600;color:var(--theme-text);margin-bottom:4px}.room-item-id{font-size:12px;color:var(--theme-text);opacity:.6;font-family:Courier New,monospace;margin-bottom:4px}.room-item-meta{font-size:12px;color:var(--theme-text);opacity:.7}.room-item-actions{display:flex;gap:8px}.btn-room-join,.btn-room-delete{background:var(--theme-border);border:none;padding:8px 12px;border-radius:8px;cursor:pointer;font-size:16px;transition:all .3s}.btn-room-join:hover{background:var(--theme-primary);color:#fff}.btn-room-delete:hover{background:#ef4444;color:#fff}.room-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600}.room-badge.owner{background:#fbbf24;color:#78350f}.room-badge.coowner{background:#a78bfa;color:#3b1f5e}.room-badge.participant{background:#94a3b8;color:#1e293b}.join-room-section{margin-top:10px}.join-room-label{display:block;margin-bottom:8px;font-weight:600;color:var(--theme-text);font-size:14px}.join-room-input-group{display:flex;flex-direction:column;gap:10px}.btn-join-room-inline{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s;background:var(--theme-primary);color:#fff}.btn-join-room-inline:hover:not(:disabled){background:var(--theme-secondary);transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.btn-join-room-inline:disabled{opacity:.5;cursor:not-allowed}.btn-link{background:none;border:none;color:var(--theme-primary);cursor:pointer;text-decoration:underline;padding:0}.btn-link:hover{color:var(--theme-secondary)}.checking-password-hint{font-size:12px;color:var(--theme-text);opacity:.7;padding:8px;text-align:center}*{margin:0;padding:0;box-sizing:border-box}:root{--theme-primary: #3b82f6;--theme-secondary: #60a5fa;--theme-bg: #f8fafc;--theme-text: #1e293b;--theme-card: #ffffff;--theme-border: #e2e8f0;overflow-x:hidden}body{font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--theme-bg);min-height:100vh;color:var(--theme-text);transition:background-color .3s ease,color .3s ease;overflow-x:hidden;max-width:100vw}.brand-name{font-family:Poppins,sans-serif;font-weight:700;letter-spacing:-.5px}#root{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:0;overflow-x:hidden;max-width:100vw}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}::-webkit-scrollbar-thumb{background:#888;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#555}
