/* Partials styles - contexts, apps_menu, user_menu */ /* ========================================== Contexts Selector Styles ========================================== */ .contexts-selector { margin-bottom: 12px; } .contexts-label { display: block; font-size: 12px; font-weight: 500; color: var(--text-secondary); margin-bottom: 6px; } .contexts-dropdown { width: 100%; padding: 10px 12px; background: var(--surface-hover); border: 1px solid var(--border); border-radius: 8px; color: var(--text); font-size: 13px; cursor: pointer; transition: all 0.15s; } .contexts-dropdown:hover { border-color: var(--primary); } .contexts-dropdown:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 2px var(--primary-light); } .contexts-list { display: flex; flex-direction: column; gap: 6px; } .context-item { padding: 10px 12px; background: var(--surface-hover); border: 1px solid var(--border); border-radius: 8px; cursor: pointer; transition: all 0.15s; } .context-item:hover { background: var(--surface); border-color: var(--primary); } .context-item.active { background: var(--primary-light); border-color: var(--primary); } .context-name { font-size: 13px; font-weight: 500; margin-bottom: 2px; } .context-description { font-size: 11px; color: var(--text-secondary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .contexts-empty { padding: 16px; text-align: center; color: var(--text-secondary); font-size: 13px; } /* ========================================== Apps Menu Styles ========================================== */ .apps-menu { position: absolute; top: 100%; right: 0; margin-top: 8px; background: var(--surface); border: 1px solid var(--border); border-radius: 12px; box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2); padding: 16px; min-width: 280px; z-index: 1000; animation: fadeIn 0.15s ease; } @keyframes fadeIn { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } } .apps-menu-header { margin-bottom: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--border); } .apps-menu-header h3 { font-size: 14px; font-weight: 600; color: var(--text-secondary); } .apps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; } .app-item { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 12px 8px; border-radius: 8px; text-decoration: none; color: var(--text); transition: all 0.15s; } .app-item:hover { background: var(--surface-hover); } .app-item.active { background: var(--primary-light); } .apps-menu .app-icon { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 8px; background: var(--surface-hover); } .apps-menu .app-icon svg { width: 24px; height: 24px; color: var(--primary); } .apps-menu .app-name { font-size: 12px; font-weight: 500; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; } /* ========================================== User Menu Styles ========================================== */ .user-menu { position: absolute; top: 100%; right: 0; margin-top: 8px; background: var(--surface); border: 1px solid var(--border); border-radius: 12px; box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2); min-width: 260px; z-index: 1000; overflow: hidden; animation: fadeIn 0.15s ease; } .user-menu-header { display: flex; align-items: center; gap: 12px; padding: 16px; } .user-avatar-large { width: 48px; height: 48px; border-radius: 50%; background: var(--primary); color: white; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 600; flex-shrink: 0; } .user-info { flex: 1; min-width: 0; } .user-name { font-size: 15px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .user-email { font-size: 13px; color: var(--text-secondary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .user-menu-divider { height: 1px; background: var(--border); margin: 0; } .user-menu-nav { padding: 8px; } .user-menu-item { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 8px; text-decoration: none; color: var(--text); font-size: 14px; transition: all 0.15s; cursor: pointer; } .user-menu-item:hover { background: var(--surface-hover); } .user-menu-item svg { color: var(--text-secondary); flex-shrink: 0; } .user-menu-item:hover svg { color: var(--text); } .user-menu-item.logout { margin: 8px; color: var(--error); } .user-menu-item.logout:hover { background: rgba(239, 68, 68, 0.1); } .user-menu-item.logout svg { color: var(--error); }