.header[data-v-1bfe5e97]{display:flex;align-items:center;gap:.75rem}.header-nav[data-v-1bfe5e97]{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex:1}.nav-links[data-v-1bfe5e97]{display:flex;align-items:center;gap:1.5rem}.nav-actions[data-v-1bfe5e97]{display:flex;align-items:center;gap:1rem;margin-left:auto}.nav-actions button[data-v-1bfe5e97]{margin-left:.5rem}.logo-image[data-v-1bfe5e97]{height:50px}@media (min-width: 768px){.logo-image[data-v-1bfe5e97]{height:70px}}.mobile-only[data-v-1bfe5e97]{display:none}.desktop-only[data-v-1bfe5e97]{display:flex}@media (max-width: 767px){.mobile-only[data-v-1bfe5e97]{display:block}.desktop-only[data-v-1bfe5e97]{display:none}}@media (min-width: 768px){.logout-icon[data-v-1bfe5e97]{display:none!important}}.logout-icon[data-v-1bfe5e97]{background:none;border:none;font-size:1.5rem;padding:8px;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-color)}.bell-btn[data-v-1bfe5e97]{position:relative;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--text-color);width:44px;height:44px;border-radius:8px}.bell-icon[data-v-1bfe5e97]{font-size:1.3rem}.left-bell[data-v-1bfe5e97]{margin-right:.5rem}@media (max-width: 767px){.left-bell[data-v-1bfe5e97]{display:none!important}}@media (min-width: 1024px){.desktop-fab[data-v-1bfe5e97]{position:fixed;right:16px;bottom:calc(env(safe-area-inset-bottom,0px) + 16px);width:48px;height:48px;border-radius:999px;background-color:var(--secondary-color);border:1px solid var(--border-color);box-shadow:0 6px 18px #00000059;z-index:1000}.desktop-fab .badge[data-v-1bfe5e97]{top:-4px;right:-4px}}.bell-btn .icon[data-v-1bfe5e97],.logout-btn .icon[data-v-1bfe5e97],.logout-icon .icon[data-v-1bfe5e97]{color:var(--text-color)}.bell-btn:hover .icon[data-v-1bfe5e97],.logout-btn:hover .icon[data-v-1bfe5e97],.logout-icon:hover .icon[data-v-1bfe5e97]{color:var(--primary-color)}.logout-btn[data-v-1bfe5e97]{display:inline-flex;align-items:center;gap:8px}.logout-text[data-v-1bfe5e97]{font-size:.95rem}.badge[data-v-1bfe5e97]{position:absolute;top:2px;right:2px;min-width:18px;height:18px;padding:0 5px;background:var(--primary-color);color:#fff;font-size:.75rem;line-height:18px;text-align:center;border-radius:9px;box-shadow:0 0 0 2px var(--secondary-color)}.connection-status[data-v-1bfe5e97]{width:12px;height:12px;border-radius:50%;transition:background-color .3s,box-shadow .3s}.connection-status.connected[data-v-1bfe5e97]{background-color:#2ecc71;box-shadow:0 0 8px #2ecc71}.connection-status.connecting[data-v-1bfe5e97]{background-color:#f1c40f;animation:pulse-yellow-1bfe5e97 1.5s infinite}.connection-status.disconnected[data-v-1bfe5e97]{background-color:#e74c3c}@keyframes pulse-yellow-1bfe5e97{0%{box-shadow:0 0 5px #f1c40f66}50%{box-shadow:0 0 12px #f1c40f}to{box-shadow:0 0 5px #f1c40f66}}@media (max-width: 1023px){.logout-btn[data-v-1bfe5e97]{display:none!important}}.loader-overlay[data-v-b705321d]{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.spinner[data-v-b705321d]{width:60px;height:60px;border:5px solid rgba(255,255,255,.3);border-top-color:var(--primary-color);border-radius:50%;animation:spin-b705321d 1s linear infinite}@keyframes spin-b705321d{to{transform:rotate(360deg)}}.mobile-bottom-nav[data-v-0ff59542]{position:fixed;bottom:0;left:0;right:0;height:var(--bottom-nav-height);background-color:var(--secondary-color);border-top:1px solid var(--border-color);justify-content:space-around;align-items:center;padding-bottom:var(--safe-bottom);z-index:90;display:flex}@media (min-width: 768px){.mobile-bottom-nav[data-v-0ff59542]{display:none}}.nav-item[data-v-0ff59542]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:var(--text-color);opacity:.7;transition:opacity .2s,color .2s;padding:8px 0;min-height:44px;position:relative}.nav-item.active[data-v-0ff59542]{color:var(--primary-color);opacity:1}.nav-item.active[data-v-0ff59542]:before{content:"";position:absolute;top:0;left:20%;right:20%;height:2px;background-color:var(--primary-color);border-radius:0 0 2px 2px}.nav-icon[data-v-0ff59542]{font-size:1.5rem;margin-bottom:2px}.nav-label[data-v-0ff59542]{font-size:.75rem}.nav-item[data-v-0ff59542]:active{transform:scale(.95)}.badge[data-v-0ff59542]{position:absolute;top:4px;right:18%;min-width:18px;height:18px;padding:0 5px;background:#e74c3c;color:#fff;font-size:.75rem;line-height:18px;text-align:center;border-radius:9px;box-shadow:0 0 0 2px var(--secondary-color)}:root{--bg-color: #1a1a1a;--text-color: #e0e0e0;--primary-color: #8e44ad;--secondary-color: #202933;--border-color: #3a3a3a;--error-color: #e74c3c;--user-msg-bg: #5064bd;--ai-msg-bg: #673975;--vc-nav-color: #ffffff;--vc-nav-background: rgba(0, 0, 0, .5);--vc-pg-background-color: rgba(255, 255, 255, .3);--vc-pg-active-color: var(--primary-color);--vc-pg-border-radius: 8px;--vc-pg-height: 8px;--vc-pg-margin: 8px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--mobile-nav-height: 56px;--bottom-nav-height: 64px}html{height:100%;overflow:hidden}body{height:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-color);color:var(--text-color);overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-top:var(--safe-top)}#app{height:100%;display:flex;flex-direction:column;font-weight:400}main{flex-grow:1;display:flex;min-height:0;overflow:hidden;padding:0;padding-bottom:calc(var(--bottom-nav-height) + var(--safe-bottom) - 15px)}@media (min-width: 768px){main{padding:0 2rem 2rem}}button{background-color:var(--primary-color);color:#fff;border:none;padding:12px 20px;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .2s;min-height:44px;touch-action:manipulation}button:hover{background-color:#9b59b6}button:disabled{background-color:#555;cursor:not-allowed}button.button-secondary{background-color:#4a4a4a}button.button-secondary:hover{background-color:#5f5f5f}input,select,textarea{width:100%;padding:10px;margin-bottom:1rem;border-radius:5px;border:1px solid var(--border-color);background-color:var(--secondary-color);color:var(--text-color);font-size:1rem;box-sizing:border-box}@media (max-width: 768px){input,select,textarea{font-size:16px}}.header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);flex-shrink:0;position:sticky;top:0;background-color:var(--bg-color);z-index:100}@media (min-width: 768px){.header{padding:1rem 2rem}.header-nav a{color:var(--text-color);text-decoration:none;margin-left:1.5rem}.header-nav a.router-link-exact-active{color:var(--primary-color);font-weight:700}.header-nav button{margin-left:1.5rem}.nav-links a{color:var(--text-color);text-decoration:none;margin-left:1.5rem}.nav-links a.router-link-exact-active{color:var(--primary-color);font-weight:700}}.chat-layout-grid{display:grid;grid-template-columns:1fr;height:100%;width:100%;gap:0}@media (min-width: 768px){.chat-layout-grid{grid-template-columns:280px 1fr;gap:1rem}}@media (min-width: 1024px){:root{--chat-left: clamp(280px, 20vw, 360px);--chat-right: clamp(280px, 22vw, 420px)}.chat-layout-grid{grid-template-columns:var(--chat-left) 1fr var(--chat-right);gap:1.5rem}}.chat-layout-left,.chat-layout-center,.chat-layout-right{display:none;flex-direction:column;background-color:var(--secondary-color);overflow:hidden}.chat-layout-center{display:flex;height:100%}@media (min-width: 768px){.chat-layout-left{display:flex;border-radius:8px;border:1px solid var(--border-color)}.chat-layout-center{border-radius:8px;border:1px solid var(--border-color)}}@media (min-width: 1024px){.chat-layout-right{display:flex;border-radius:8px;border:1px solid var(--border-color)}}.auth-form{max-width:400px;margin:5rem auto;padding:2rem;border:1px solid var(--border-color);border-radius:8px}.auth-form h1,.auth-form p{text-align:center}.auth-form a{color:var(--primary-color)}.profiles-grid{display:grid;grid-template-columns:1fr;gap:1rem;align-items:start}@media (min-width: 640px){.profiles-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (min-width: 1024px){.profiles-grid{max-width:1280px;margin-inline:auto;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;justify-items:center}}.profile-detail-grid{display:grid;grid-template-columns:1fr;gap:2rem;align-items:start}@media (min-width: 1024px){.profile-detail-grid{grid-template-columns:1fr 1fr}}.chat-view{display:flex;flex-direction:column;height:100%}.chat-messages{flex-grow:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column}.profile-card{border:1px solid var(--border-color);border-radius:8px;overflow:hidden;background-color:var(--secondary-color);display:flex;flex-direction:column}.profile-card img{width:100%;height:auto;aspect-ratio:1 / 1.2;object-fit:cover}.profile-card-content{padding:1rem;display:flex;flex-direction:column;flex-grow:1}.profile-card-content p{flex-grow:1;text-align:left}.profile-card h3{margin-top:0;margin-bottom:0;text-align:center}.conversations-list{list-style:none;padding:0}.conversation-item{display:flex;align-items:center;gap:15px;background-color:var(--secondary-color);padding:1rem;border-radius:8px;margin-bottom:1rem;transition:background-color .2s}.conversation-item:hover{background-color:#34495e}.conversation-avatar{width:60px;height:60px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color)}.conversation-content{flex-grow:1;cursor:pointer;color:inherit;text-decoration:none;min-width:0}.conversation-item-header{font-weight:700;font-size:1.1rem}.conversation-item-last-msg{color:#bdc3c7;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-item-time{font-size:.8rem;color:#7f8c8d}.message-row{display:flex;align-items:flex-end;margin-bottom:15px;max-width:80%}.ai-row{align-self:flex-start}.user-row{align-self:flex-end;flex-direction:row-reverse}.message-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0}.ai-row .message-avatar{margin-right:10px}.message-bubble{max-width:100%;padding:10px 15px;border-radius:15px;word-wrap:break-word;display:inline-block;color:#fff;white-space:pre-wrap}.user-row .message-bubble{background-color:var(--user-msg-bg);border-bottom-right-radius:3px}.ai-row .message-bubble{background-color:var(--ai-msg-bg);border-bottom-left-radius:3px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#1a1a1ad9;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-box{background-color:var(--secondary-color);padding:2rem 2.5rem;border-radius:8px;text-align:center;max-width:450px;border:1px solid var(--border-color);box-shadow:0 10px 30px #00000080}.modal-box h3{margin-top:0;color:var(--primary-color);font-size:1.5rem}.modal-box p{line-height:1.6;color:var(--text-color);margin-bottom:2rem}.modal-actions{display:flex;justify-content:center;gap:1rem}.fullscreen-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000d9;display:flex;justify-content:center;align-items:center;z-index:1000;cursor:zoom-out}.zoomed-image{max-width:95%;max-height:95%;object-fit:contain}.error-message{color:var(--error-color);margin-bottom:1rem;text-align:center}.loading-indicator{align-self:center;margin:auto;color:var(--text-color);font-style:italic}.no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.smooth-scroll{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background-color:var(--secondary-color);border-radius:6px;border:2px solid var(--bg-color)}::-webkit-scrollbar-thumb:hover{background-color:var(--primary-color)}@media (max-width: 768px){::-webkit-scrollbar{width:0px;background:transparent}}
